我目前正在为 Windows 设计我的第一个 GUI。我正在使用 MFC 和 Visual Studio 2008。我一直在设计我的程序的显示器具有 1680x1050 的原始分辨率。如果我编译并将我的程序发送给我的一位同事以在他们的计算机上运行(通常是运行在 1024x768 的笔记本电脑),我的程序将不适合他们的屏幕。
我一直在尝试了解如何设计 MFC 应用程序以便它可以在所有分辨率上运行,但我一直在寻找误导性信息。在我看来,DLU 似乎应该为您调整应用程序的大小,并且您唯一遇到问题的时候是您需要担心其分辨率的实际位图。但如果是这种情况,当我将显示器设置为较低的分辨率时,为什么我的程序不再适合我的屏幕?我的程序没有“缩小”以占用它在 1680x1050 下使用的相同数量的屏幕空间,而是变得巨大且颗粒状。
这里的“明显”解决方案是将我的分辨率设置为 1024x768 并重新设计我的程序以适应屏幕。除了我已经尽可能地压缩了对话框中的所有内容,以尝试让我的程序适合以 1024x768 运行的屏幕。我的对话框字体设置为 Microsoft Sans Serif 8,但在 1024x768 运行时仍然显得很大(远大于 8 磅)。
我知道必须有一种方法可以使我的程序保持相同的缩放比例……对吗?或者这是解决问题的错误方法?设计 MFC 程序以使其可以在多种分辨率(例如 800x600 及以上)上运行的正确/标准方法是什么?