亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Windows 窗體根據不同的顯示器分辨率調整大小

Windows 窗體根據不同的顯示器分辨率調整大小

C#
www說 2023-07-22 16:25:17
我正在編寫這個應用程序,它的大小為 (800 X 400)。問題是,當我在不同的顯示器分辨率上運行它時,它會調整大小,并且所有對象都會變大。有沒有辦法在不最大化的情況下固定所有顯示器分辨率的大???
查看完整描述

1 回答

?
揚帆大魚

TA貢獻1799條經驗 獲得超9個贊

一般來說,如果您的表單定義為固定大小 (800 x 400),那么如果您將分辨率更改為 (800 x 600),它通常會在同一屏幕上顯得更大。

屏幕分辨率定義了構成視口的像素數。更改為高分辨率將使所有應用程序(而不僅僅是您的應用程序)顯得更小。更改為低分辨率可以使所有應用程序(不僅僅是您的應用程序)顯得更大。

改變屏幕分辨率就是改變DPI

Windows 和 WinForms 確實提供了一些用于縮放應用程序的機制,以便界面可以在不同的屏幕上更加成比例,但與 WPF/UWP 等其他技術相比,在 WinForms 中利用它可能會有點碰運氣,特別是如果您有較舊的應用程序或代碼庫。

如果縮放比例不是您所期望的,請首先檢查用戶是否已將其顯示設置中的縮放比例調回 100%,許多筆記本電腦和平板電腦已將其設置為 125% OOTB。當您沒有正確定義界面來利用字體縮放時,它可能看起來有點時髦。

將 Windows 字體縮放設置回 100% 意味著您的應用程序只需應對 DPI 縮放問題,而不是 Windows 可能施加的字體和 DPI 縮放。

顯示設置中的字體縮放,在 Windows 10 中如下所示:

http://img2.sycdn.imooc.com/64bb929e0001628203150144.jpg

閱讀:?Windows 窗體中的自動縮放

正確使用的關鍵是應用程序中的所有表單和控件都必須配置為使用基于 DPI 的縮放基于字體的縮放。當這兩個概念混淆時,用戶界面可能看起來一團糟,因為某些元素會調整大小,而另一些則不會。

此縮放行為在表單中定義為AutoScaleMode

http://img1.sycdn.imooc.com/64bb92ae00019eed03430320.jpg

- 這在新應用程序中默認為字體。

然而,許多第三部分組件可以設置為 DPI 模式,特別是如果它們有任何繪圖畫布或其顯示邏輯由像素引用(這在 WinForms 自定義繪畫中很常見)。

因此,將表單設置為使用DPI縮放可能會解決您的問題


查看完整回答
反對 回復 2023-07-22
  • 1 回答
  • 0 關注
  • 267 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號