C# と VB.NET の質問掲示板
ASP.NET、C++/CLI、Java 何でもどうぞ
C# と VB.NET の入門サイト
掲示板トップ
C# と VB.NET のサンプル
新規作成
利用方法/規約
ツリー表示
トピック表示
ランキング
記事検索
過去ログ
■103257
/ )
Re[1]: 多種のディプレイに対応できるアプリ
□投稿者/ くま
(31回)-(2024/07/12(Fri) 02:11:46)
自分の場合で恐縮ですが、最近
・Windows Forms
・.NET Framework 4.8.1
で対応しました。
Windows フォームでの自動スケーリング
https://learn.microsoft.com/ja-jp/dotnet/desktop/winforms/automatic-scaling-in-windows-forms?view=netframeworkdesktop-4.8
・ScaleChildren プロパティ
・GetScaledBounds メソッド
・ScaleControl メソッド
のオーバーライドでの方法があったのですが、メンドクサくなって
a. 基本TableLayoutPanelの調整で済ます。
b. それでも対応できない範囲は
1. Loadのタイミングでコントロールを登録するクラスを作成。
2. クラス内には、DPIが96(100%)ではない場合
・対象コントロール
・位置サイズを変更するか?
・フォントサイズを変更するか?
を定義しておいてしのぎました。
ただ複数モニタでDPIが違う場合とかをテストはできませんでした
(Window.DpiChangedイベントとかうまく試せなかった...)
フォント関係は
https://qiita.com/felis_silv/items/efee4b1a397b0b95100a
ピクセル単位で指定できたのはよかった。
返信
編集キー/
編集
管理者用
-
Child Tree
-