在WinForms應用程序中,根據屏幕分辨率和最大化和調整窗口大小,處理重新調整控件的最佳方式是什麼?我有3個像這樣設置的列。每列中都有LABEL TEXTBOX。你可以把它算作6列。我已經嘗試將錨定在右側,但問題是第1列中的文本框將重疊接下來的2列。我也嘗試了對接,但似乎沒有辦法。有沒有簡單的方法來做到這一點?如何根據分辨率重新調整控件大小?
回答
TL; DR:您不能沒有手動編碼調整大小的邏輯。作爲一個方面說明,你可能不應該試圖做到這一點。
在傳統的WinForms中,沒有自動的方法來實現我自己的知識而不用自己的解決方案。 Sean87suggestedAutoScaleMode
屬性,但雖然它是自動的,但不支持按分辨率自動調整大小。它提供了一個基於Windows中字體大小設置或DPI設置進行縮放的選項。當簡單地改變屏幕分辨率時,這些都不會直接改變,並且,實際上,大多數典型用戶(甚至可能是高級用戶)可能從不修改DPI或字體大小設置。
此外,從基本的用戶角度來看,增加屏幕分辨率的重點是爲應用程序窗口提供更多的虛擬桌面「空間」。實際上,大多數顯示器現在都是基於LCD的,因此有native resolutions改變這種情況主要是CRT過去的事情。但是,購買新的,更大的顯示器的行爲會讓典型的用戶增加這個虛擬屏幕空間,以便他們可以同時在屏幕上看到更多的窗口。一個始終保持與屏幕分辨率相同的相對大小的應用程序,我認爲並不常見,並且與大多數用戶的期望相反,甚至包括我們的高級開發人員用戶。
通常,如果窗口被調整大小,您將編碼您的應用程序以智能且有用地調整其內容,但通常您會按照用戶的要求管理它,因爲它是他們的機器和他們的偏好(將其視爲「我的房子,我的規則「原則)。這也是爲什麼大多數(所有?)應用程序不會更改窗口位置,除非用戶直接操作(通過拖動窗口框等)。事實上,所有這些都可能解釋了爲什麼微軟選擇而不是以包含任何基於分辨率的自動調整規則。
你可以改變表格的AutoScaleMode
以及每個控件的auto size屬性。你可以使用splitcontainer或者panel來組成你的專欄。
您沒有定義「列」的含義。通常,您應該使用TableLayoutPanel
並在每個「單元格」內設置控件的錨點。
- 1. 如何根據屏幕分辨率調整圖像大小?
- 2. 如何根據屏幕分辨率調整div的大小
- 3. 如何根據VB.NET中的屏幕分辨率調整控件大小或重新定位
- 4. Android的調整大小位圖根據屏幕分辨率
- 5. 根據顯示器分辨率調整字體大小
- 6. 根據屏幕尺寸/分辨率調整圖像大小
- 7. 根據屏幕分辨率自動調整大小的網頁
- 8. PHP - 根據圖像分辨率調整大小
- 9. 根據分辨率自動調整大小(FLEX)
- 10. 根據屏幕分辨率調整圖像的大小Android
- 11. Fabricjs調整大小失去分辨率
- 12. 如何根據客戶端的分辨率重新調整應用程序組件的大小?
- 13. 根據分辨率調整表格/控件的最佳方法?
- 14. 如何根據不同的分辨率調整android webview中的圖像大小?
- 15. 根據計算機分辨率調整JFrame和組件的大小
- 16. 基於屏幕分辨率控制調整大小
- 17. 如何爲iPhone和Android分辨率調整圖像大小?
- 18. 如何限制可調整大小的窗口的分辨率?
- 19. 如何根據分辨率更改圖像大小?
- 20. 如何根據每個分辨率調整我的2D遊戲?
- 21. 如何根據屏幕分辨率調整jqGrid高度?
- 22. 如何根據設備/屏幕分辨率調整屏幕?
- 23. 根據設備分辨率調整屏幕大小Monogame Windows Phone 8
- 24. 基於屏幕分辨率調整數據網格的大小
- 25. 如何根據屏幕分辨率和大小調整圖像視圖的大小
- 26. 根據窗體調整大小和調整窗體控件調整大小
- 27. 如何在調整大小時調整不同分辨率的網頁寬度?
- 28. 底部滾動的瀏覽器重新調整大小以移動分辨率
- 29. 用iOS Retina顯示屏奇怪的重新調整大小和分辨率
- 30. 如何檢索MS Access VBA中的屏幕大小/分辨率以重新調整表格的大小