我試圖保存/恢復窗口的大小,狀態和System::Windows::Forms::Form
的位置,並且想要確保如果窗口以前在另一臺顯示器上,並且只有snogle顯示器可用時啓動該應用程序,那麼它將自己置於屏幕上某處。如何以編程方式確定我的桌面的大小?
那麼如何確定當前的桌面大小以及我的應用程序是否超出界限呢?
我試圖保存/恢復窗口的大小,狀態和System::Windows::Forms::Form
的位置,並且想要確保如果窗口以前在另一臺顯示器上,並且只有snogle顯示器可用時啓動該應用程序,那麼它將自己置於屏幕上某處。如何以編程方式確定我的桌面的大小?
那麼如何確定當前的桌面大小以及我的應用程序是否超出界限呢?
實際上,最好的解決方案是在user32.dll中使用本地方法GetWindowPlacement和SetWindowPlacement。這些自動處理所有的邊緣情況。
使用它們的示例WPF實現可以在http://jake.ginnivan.net/2010/04/remembering-wpf-windows-position-2/找到從此你可以爲WinForms做同樣的事情。
+ 1 /接受..雖然到時候我讀這個,我已經推出了自己的:-) – 2010-06-23 18:51:33
你看過Screen班嗎?
Screen.WorkingArea
屬性會給你顯示器的桌面大小。
可能重複的[C#:獲取完整的桌面大小?](http://stackoverflow.com/questions/1317235/c-get-complete-desktop-size) – 2010-06-23 14:27:17