我有一個需要在VB.net中最大化的窗體。我不希望用戶能夠改變其大小或移動它。 我該怎麼做?如何防止表單被用戶調整大小?
回答
設置突出顯示的屬性。設置MaximimSize和MinimizeSize性質相同的尺寸
爲了防止用戶調整大小,從屬性窗口或代碼
frmYour.BorderStyle = System.WinForms.FormBorderStyle.Fixed3D
設置FormBoderStyle到Fixed3D或FixedDialog而WindowState屬性設置爲最大化,設置MaximizeBox和MinimizeBox屬性設置爲false。
爲了防止用戶走動,覆蓋的WndProc
Protected Overrides Sub WndProc(ByRef m As Message)
Const WM_NCLBUTTONDOWN As Integer = 161
Const WM_SYSCOMMAND As Integer = 274
Const HTCAPTION As Integer = 2
Const SC_MOVE As Integer = 61456
If (m.Msg = WM_SYSCOMMAND) And (m.WParam.ToInt32() = SC_MOVE) Then
Return
End If
If (m.Msg = WM_NCLBUTTONDOWN) And (m.WParam.ToInt32() = HTCAPTION) Then
Return
End If
MyBase.WndProc(m)
End Sub
哇所有那些整數的意義是什麼? – 2009-07-13 13:09:23
傳遞給Windows API的常量 - 每個整數代表一個Windows消息命令和相應的參數 – amazedsaint 2009-07-13 13:27:31
這最好,它可以防止用戶將窗體拖動到另一臺顯示器(我有一個問題,不知道它是贏8或多個監視器造成這一點)。 Mucky(而不是回答者的錯誤),但答案是正確的。 – 2012-10-11 10:54:33
您可以刪除用戶界面與控制此:
frmYour.MinimizeBox = False
frmYour.MaximizeBox = False
設置窗口開始風格最大化。然後,隱藏最小化和最大化按鈕。
//Set fixed border
yourForm.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D
//Set the state of your form to maximized
yourForm.WindowState = FormWindowState.Maximized
//Disable the minimize box and the maximize box
yourForm.MinimizeBox = False
yourForm.MaximizeBox = False
將表單的最小和最大尺寸設置爲相同的數字。不要顯示最小和最大按鈕。
正如@LarsTech上面所說的,你仍然可以在這個場景中手動拉取和調整表單的大小,所以這不是完整的答案,也許是其中的一部分,但並不妨礙整個問題 – 2017-04-27 11:41:13
一些代碼添加到窗體的Load事件:
me.maximumsize = new size(Width, Height)
me.minimumsize = me.maximumsize
me.maximizebox = false
me.minimizebox = false
示例:對於50個像素的每一個表格的高度和寬度:
me.maximumsize = new size(50, 50)
me.minimumsize = me.maximumsize
me.maximizebox = false
me.minimizebox = false
請注意,將maximumsize
和minimumsize
設置爲t如此處所示的相同大小可防止調整窗體大小。
在vb.net中有一個選項可以讓你做到這一切。
用戶將無法重新大小的形式或移動它,雖然也有其他方法,這個我認爲是最好的。
只需在解決方案資源管理器中更改這些設置即可。
MaximizeBox = False
MinimizeBox = False
其他的東西,如ControlBox,Locked和FormBorderStyle是額外的。
- 1. 防止表調整大小
- 2. 防止用戶調整窗口大小/表格大小
- 3. 如何防止div調整大小?
- 4. 如何防止NC_CALCSIZE調整表單的大小? C#
- 5. 防止wx.StaticBitmap調整大小
- 6. wx.PasswordEntryDialog防止調整大小
- 7. 如何防止用戶調整QTableWidget的列大小?
- 8. Java:如何防止Canvas添加到JFrame時被調整大小?
- 9. 如何防止自定義QWidget被調整大小?
- 10. 如何防止窗口被tkinter調整大小?
- 11. Highcharts固定標籤長度,防止圖表被調整大小
- 12. 防止調整大小的文本區域調整整個表的大小
- 13. WPF防止datagrid自動調整窗口大小調整大小
- 14. 在用戶調整大小後停止調整jpanel的大小
- 15. NSLayoutConstraint防止NSWindow調整大小
- 16. 防止JList自動調整大小
- 17. 防止WPF Datagrid列調整大小
- 18. 防止網站調整大小
- 19. OpenGL防止在窗口調整大小
- 20. 防止SplitPane在javafx中調整大小
- 21. 防止窗口大小調整行爲
- 22. 爲UIButton防止UIImage調整大小
- 23. 防止在運行時調整用戶控件的大小
- 24. 如何防止調整Chrome Packaged應用程序的大小?
- 25. 如何防止使用Autolay調整UIImageView的大小
- 26. 如何防止表格單元格調整大小時添加文本
- 27. 如何禁用用戶的表單大小調整?
- 28. Gridsplitter防止網格列被調整大小
- 29. 防止父母被孩子調整大小
- 30. 如何防止EditText在用戶輸入時調整其自身大小?
@Powerlord你怎麼知道它不是某種電影播放器或遊戲,你希望*每一個最後像素? – 2013-07-18 15:23:01
Microsoft爲[Form.FormBorderStyle屬性](http://msdn.microsoft.com/en-us/library/system.windows.forms.form.formborderstyle%28v=vs.110)提供了一個全面的示例文檔%29.aspx)。 – DavidRR 2014-07-10 18:39:36