MFCを使用してダイアログアプリを開発しています。
Windowd7の設定でコントロール パネル->デスクトップのカスタマイズ->ディスプレイから
「画面上の文字を読みやすくします」で文字サイズを125%に変更するとアプリの画面レイアウトが一部崩れます。
これを回避するために、どのような設定でも小(100%)でアプリを表示させるようにアプリ側で設定することは可能でしょうか?
もしくは、アプリ側でどちらの設定が使用されているかを判定することは可能でしょうか?
デスクトップのカスタマイズによる、アプリのレイアウト崩れを防ぐ方法
Re: デスクトップのカスタマイズによる、アプリのレイアウト崩れを防ぐ方法
とりあえず,MSの公式ペーパーが出ています。
高 DPI 対応の Win32 アプリケーションを記述する
上記を読む限り,自前で修正する必要があるようです。
----
2012-03-08T16:23+09:00 誤字修正 (条軌→上記)
高 DPI 対応の Win32 アプリケーションを記述する
上記を読む限り,自前で修正する必要があるようです。
----
2012-03-08T16:23+09:00 誤字修正 (条軌→上記)
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: デスクトップのカスタマイズによる、アプリのレイアウト崩れを防ぐ方法
固定に出来ない事はないと思いますが、幅広く使ってもらうには出来れば対応したほうが良いかと思います。
「レイアウト メトリック」
http://msdn.microsoft.com/ja-jp/library/bb847924.aspx
リソースのサイズ単位はDLUと言う単位が使われています。
96 dpi (100%)が標準で、デスクトップのカスタマイズで120 dpi (125%)などに変化します。
対応方法は、YuOさんのリンク先を参考にして下さい。
[補足]
レイアウトが若干崩れるとしたらテキスト部分だと思いますがDLU単位の処理をしていないのではないでしょうか?
「レイアウト メトリック」
http://msdn.microsoft.com/ja-jp/library/bb847924.aspx
リソースのサイズ単位はDLUと言う単位が使われています。
96 dpi (100%)が標準で、デスクトップのカスタマイズで120 dpi (125%)などに変化します。
対応方法は、YuOさんのリンク先を参考にして下さい。
[補足]
レイアウトが若干崩れるとしたらテキスト部分だと思いますがDLU単位の処理をしていないのではないでしょうか?
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。