Windows Forms で 1024 *780 の解像度の画面を開発しましたが、それ以上の解像度では適切に収まらないと言う人もいます。これを処理する方法はありますか?
Windows フォーム アプリケーションをすべての解像度で同じように見せる方法はありますか?
Windows Forms で 1024 *780 の解像度の画面を開発しましたが、それ以上の解像度では適切に収まらないと言う人もいます。これを処理する方法はありますか?
Windows フォーム アプリケーションをすべての解像度で同じように見せる方法はありますか?
私の推奨事項は、すべての画面で「同じように見えるようにする」ことではなく、GUIをより適切にスケールアップおよびスケールダウンするように設計することです。レイアウトマネージャー、ドッキング、およびアンカーは、Winformsの友達です。TableLayoutPanelは、この種のことには非常に役立ちます。スプリッターも役立ちます...
最後に、これはWPFが解決しようとしている問題の1つです。WPFは、レイアウトマネージャーを多用します。WinformsやVB(古い学校のVB)よりもJavaやGTKのように感じます。
これは、「もっと良い方法があるはずだ」と言うようなものです。
今回の私の解決策は、現在の画面解像度に関連付けられたグローバル ScalingFactor 変数を宣言することでした。次に、すべての視覚要素のサイズにその係数を掛けました。
したがって、解像度 A 用にフォームを設計し、解像度 B が 1.2 倍大きい場合、ウィンドウ A の幅は * 1.2、フォントは fontSize * 1.2、テキストボックスの寸法は寸法 * 1.2 になります。
楽しくない。
サードパーティ製のツールを購入してこのスケーリングを実行できる場合があります。
これらの道を進む前に確認すべきもう 1 つのことは、実際に画面の解像度または dpi 設定が見栄えの悪い原因であるかどうかです。通常、解像度が高いと小さく見えるだけですが、ユーザーが「大きなフォント」を選択した場合など、非定型の dpi は大混乱を引き起こします。
アイテムのアンカー プロパティを使用でき、フォーム セットの autoScaleMode プロパティは「なし」に等しくなります。