【发布时间】:2014-09-13 20:11:28
【问题描述】:
我最近开始使用 qt 进行开发,目前进展顺利。现在我的问题是:我可以根据我的屏幕分辨率自动调整 qt 应用程序的大小吗?比如说,我有一个为 1366 x 768 设计的主窗口。它适用于一个系统。在将它移植到另一个支持 1280 x 800 或 800 x 600 的系统时,有没有简单的方法可以做到这一点?不改变创作者的 UI 设计?
感谢您对此提供的任何帮助。
提前致谢。
【问题讨论】:
我最近开始使用 qt 进行开发,目前进展顺利。现在我的问题是:我可以根据我的屏幕分辨率自动调整 qt 应用程序的大小吗?比如说,我有一个为 1366 x 768 设计的主窗口。它适用于一个系统。在将它移植到另一个支持 1280 x 800 或 800 x 600 的系统时,有没有简单的方法可以做到这一点?不改变创作者的 UI 设计?
感谢您对此提供的任何帮助。
提前致谢。
【问题讨论】:
试试这个(比如放在mainWindow的构造函数中)
this->showMaximized();
无论如何,您都可以使用以下代码简单地获取当前屏幕的分辨率:
qDebug() << QApplication::desktop()->size();
而QWidget 有resize() 方法。 QMainWindow 继承了QWidget,因此您可以在主窗口中使用resize()。
【讨论】:
Qt(和许多其他 UI 工具包)使用布局管理器解决自动调整大小问题,这取决于您如何设计 UI 以选择布局或混合它们。见http://qt-project.org/doc/qt-4.8/layout.html
【讨论】: