我正在開發一個小應用程序Winforms使用C#。用戶可以創建應用程序的多個實例並將它們放置在屏幕上。當應用程序關閉時,應用程序會記住每個打開的窗口的位置(存儲在XML文件中)。在應用程序重新啓動時,它將查看XML文件並嘗試重新打開它們。 問題是,如果用戶在兩臺屏幕計算機(在第二臺顯示器中)中放置一個窗口,然後在另一臺帶有1個屏幕的計算機上運行該應用程序,則由於座標不存在,窗口將不會顯示在屏幕上。值得一提的是,在一臺單電腦中,我可以看到窗口在那裏(它在任務欄中)。有沒有辦法計算窗口的新位置?要麼?Winforms:從具有兩個/多個屏幕的計算機恢復表單位置到一個屏幕的計算機
0
A
回答
0
使用System.Windows.Forms中的Screen類檢查屏幕的編號。 AllScreens包含系統當前所有屏幕的列表。如果您保存的位置不再適用於此佈局,則應該將位置重置爲默認位置。
+0
非常感謝您的回答。這正是我所做的:) – arvind
0
正如評論中提到的@SLaks scrren類幫助我實現了我所需要的。通過簡單地獲取屏幕的邊界並與存儲的座標進行比較,我就可以解決問題:
mainWindow.Location = (Screen.AllScreens.Length == 1 && savedWindow.Location.X > Screen.AllScreens[0].Bounds.Width) ? new System.Drawing.Point(0, 0) : savedWindow.Location;
相關問題
- 1. 遠程計算機的屏幕截圖
- 2. 創建一個計算機登錄屏幕VB.net
- 3. 黑莓屏幕截圖工具 - 從臺式計算機
- 4. 沒有屏幕的計算機的IP地址
- 5. 計算android屏幕大小?
- 6. 如何計算android屏幕?
- 7. Android屏幕密度計算
- 8. ThreeJS:屏幕位置到相機位置
- 9. 在一個屏幕中使用多個ViewPager設計一個屏幕
- 10. Android的活動 - 從一個屏幕到另一個屏幕
- 11. 如何使用javascript在計算機屏幕上移動窗口的位置?
- 12. 用於後續計算機視覺處理的屏幕捕獲
- 13. 如何在屏幕上的遠程計算機上啓動nc
- 14. 來自計算機屏幕的圖像識別
- 15. React具有多個屏幕的StackNavigator本機示例
- 16. 如何從一個屏幕導航到另一個屏幕
- 17. 將值從一個屏幕傳遞到另一個屏幕?
- 18. 鈦:從一個屏幕導航到另一個屏幕
- 19. 在BlackBerry上從一個屏幕切換到另一個屏幕
- 20. 計算屏幕上按鍵的次數
- 21. 的OpenCL計算凍結屏幕
- 22. 影響屏幕計算的Body'width'屬性
- 23. Android計算繪製的屏幕尺寸
- 24. 如何計算屏幕上的手指?
- 25. ClearCase視圖從一臺計算機複製到新計算機?
- 26. 具有多個字段的JAVAFX屏幕
- 27. 多個「屏幕」
- 28. C++/GLM:計算頂點的屏幕位置
- 29. AGAL:計算片段着色器中的屏幕空間位置
- 30. 使用Bash構建一個簡單的計算機到計算機使者
看看Screen類。 – SLaks
@SLaks謝謝我試試:) – arvind
@SLaks非常感謝,屏幕clas做到了這一招:) – arvind