我做了1366x768分辨率的應用程序,它是我的筆記本電腦目前的分辨率,作爲一個初學者,我din't有關決議護理的問題。創建分辨率獨立的winform,對C#WinForm的設置分辨率,讓屏幕分辨率在其上的winform運行
,當我把該應用程序並執行其較低的分辨率PC上,然後一切都搞砸了。形式正在其他地方,大部分隱藏。
所以,請幫我如何使我的獨立的WinForm的決議,或如何得到當前屏幕分辨率,並使其相應地改變自己設置成我的winform。
我做了1366x768分辨率的應用程序,它是我的筆記本電腦目前的分辨率,作爲一個初學者,我din't有關決議護理的問題。創建分辨率獨立的winform,對C#WinForm的設置分辨率,讓屏幕分辨率在其上的winform運行
,當我把該應用程序並執行其較低的分辨率PC上,然後一切都搞砸了。形式正在其他地方,大部分隱藏。
所以,請幫我如何使我的獨立的WinForm的決議,或如何得到當前屏幕分辨率,並使其相應地改變自己設置成我的winform。
在這裏看到:http://social.msdn.microsoft.com/forums/en-US/vbgeneral/thread/1be40692-80fa-42ba-b316-9fe13a935b4f/這裏:http://social.msdn.microsoft.com/Forums/en-US/winforms/thread/d5f2cd8d-d24d-4574-ba3a-96e22e3d1b56/
一般的方法是先從最小分辨率您將與合作。然後你可以調整你的表格(使用適當的對接和錨點)。
屬性
Screen.PrimaryScreen.WorkingArea
爲形式的大小和位置是非常有用的。 例如這樣的代碼:
this.Width = Screen.PrimaryScreen.WorkingArea.Width/2;
this.Height = Screen.PrimaryScreen.WorkingArea.Height/2;
this.Top = (Screen.PrimaryScreen.WorkingArea.Top + Screen.PrimaryScreen.WorkingArea.Height)/4;
this.Left = (Screen.PrimaryScreen.WorkingArea.Left + Screen.PrimaryScreen.WorkingArea.Width)/4;
(Screen類是System.Windows.Forms命名空間中的成員)
將放置在其中它是在屏幕和大小它的中間執行的形式到屏幕的一半。
的WorkingArea VAR用來計算屏幕的大小時要排除的東西,如任務欄和桌面上的其他停靠項。
希望這會有所幫助。
你爲什麼要加入這樣的代碼時,你可以通過設置形式「中StartPosition」屬性來完成中心屏幕完全相同的事情,並WindowsState到最大化? – 2013-12-23 15:48:49
@ScopeCreep,你確定OP想要一個最大化的表單嗎?我的代碼只能佔用屏幕的一部分 – Neowizard 2013-12-30 17:03:39