私は現在、初めて Windows 用の GUI を設計しています。MFC と Visual Studio 2008 を使用しています。プログラムを設計しているモニターのネイティブ解像度は 1680x1050 です。プログラムをコンパイルして、同僚のコンピュータ (通常は 1024x768 で動作するラップトップ) で実行するために送信すると、私のプログラムは同僚の画面に収まりません。
すべての解像度で実行できるように MFC アプリケーションを設計する方法について調べてみましたが、誤解を招く情報が見つかり続けています。どこを見ても、DLU はアプリケーションのサイズを変更するものであり、問題が発生するのは、解像度を気にする必要がある実際のビットマップがある場合だけです。しかし、この場合、モニターをより低い解像度に設定すると、プログラムが画面に収まらなくなるのはなぜですか? 私のプログラムは、1680x1050 で使用するのと同じ量の画面領域を占有するために「縮小」する代わりに、巨大で粒子が粗くなります。
ここでの「明白な」解決策は、解像度を 1024x768 に設定し、画面に収まるようにプログラムを再設計することです。ただし、1024x768 で実行されている画面にプログラムが収まるように、ダイアログのすべてを可能な限り押しつぶしました。私のダイアログ フォントは Microsoft Sans Serif 8 に設定されていますが、1024x768 で実行すると、依然として巨大 (8 ポイントよりはるかに大きい) に見えます。
私のプログラムが同じスケーリングを維持する方法が必要であることは知っています...そうですか?それとも、これは問題にアプローチする間違った方法ですか? 800x600以上など、多くの解像度で実行できるようにMFCプログラムを設計するための正しい/標準的な方法は何ですか?