我已经使用 Qt Creator's Designer
模块中的大部分 Widgets
开发了我的应用程序。
我已经硬编码我的widgets
的大小,这取决于它们在我的笔记本电脑上的显示方式。昨天,当我在台式机上运行应用程序时(屏幕分辨率低于笔记本电脑),一些 Main Window
widgets
不可见并且在启动时有 horizontal scrollbar
& 我必须滚动才能看到那些小部件
;我的笔记本电脑不是这种情况。
我有两个问题:
是否可以使用一些
resize factor
来调整我的所有小部件(甚至那些通过代码添加运行时)的大小?也许在启动时,我将获得运行应用程序的硬件的屏幕分辨率,然后创建该分辨率与笔记本电脑分辨率的比率。是否可以在不为每个小部件添加代码的情况下将这个因子乘以所有小部件?如何获取运行我的应用程序的屏幕的分辨率?
PS:我想知道解决这个问题的实际方法... 谢谢。
最佳答案
你可以试试这样的函数:
resize(theDesktop->screenGeometry().width()*PERCENTAGE_OF_MONITOR_WIDTH_FOR_SCREEN, theDesktop->screenGeometry().height()*PERCENTAGE_OF_MONITOR_HEIGHT_FOR_SCREEN);
Resize 是 QWidget 类的成员函数,PERCENTAGE_OF_MONITOR 变量可以是您希望应用程序占用的监视器的任何百分比。
theDesktop 是 QDesktopWidget 类型。
关于c++ - 根据 Qt 中的硬件调整主窗口的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15360971/