gpt4 book ai didi

visual-c++ - 设计一个适用于所有分辨率的MFC应用程序?

转载 作者:行者123 更新时间:2023-12-04 06:43:08 25 4
gpt4 key购买 nike

我目前正在设计我的第一个Windows版GUI。我正在使用MFC和Visual Studio2008。我在上面设计程序的监视器具有1680x1050的 native 分辨率。如果我编译程序并将其发送给我的一位同事以在他们的计算机(通常是运行在1024x768的笔记本电脑)上运行,则我的程序将无法显示在他们的屏幕上。

我一直在尝试阅读如何设计MFC应用程序,使其可以在所有分辨率下运行,但是我一直在寻找令人误解的信息。在我所看到的所有地方,似乎DLU都应该为您调整应用程序的大小,并且您唯一遇到问题的时间就是当您拥有需要担心其分辨率的实际位图时。但是,在这种情况下,将显示器设置为较低的分辨率时,为什么我的程序将不再适合我的屏幕?而不是我的程序“缩小”以占用与它在1680x1050上使用的屏幕空间相同的数量,它变得巨大而粒状。

这里的“明显”解决方案是将分辨率设置为1024x768,然后重新设计程序以适合屏幕。除了我已经尽可能多地压缩对话框上的所有内容,以尝试使程序适合运行在1024x768的屏幕上。我的对话框字体设置为Microsoft Sans Serif 8,但以1024x768运行时仍显得很大(远大于8点)。

我知道有一种方法可以使我的程序保持相同的缩放比例...对吗?还是这是解决问题的错误方法?设计MFC程序以使其可以在许多分辨率(例如800x600以上)上运行的正确/标准方法是什么?

最佳答案

我假设您的应用程序GUI是基于对话框的(主窗口是对话框)?

在这种情况下,您会遇到问题,因为正如您所发现的那样,MFC不支持正确调整对话框的大小。您的选择是:

  • 重新设计GUI以使用SDI或MDI GUI。
  • 使用对话框调整大小扩展名。有很多可用的方法,有关一些很好的建议,请参见this question。另一个选项是this onethis one
  • 不要使用MFC。 wxWidgets对对话框大小的调整提供了更好的支持。
  • 关于visual-c++ - 设计一个适用于所有分辨率的MFC应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1046494/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com