• 20988阅读
  • 7回复

qt中怎样使程序界面自动适应屏幕分辨率 [复制链接]

上一主题 下一主题
离线qihuabing
 
只看楼主 倒序阅读 楼主  发表于: 2009-11-18
— 本帖被 XChinux 从 qmake助手(qmakeAssistant) 移动到本区(2010-09-03) —
请问,我以前编的程序的分辨率是800*600,现在我想把它应用到屏幕分辨率为320*240的板子上,怎样使程序的节目,界面自动适应板子的分辨率呢?谢谢各位大侠!
我在网上查到可以用QWidget *d =QApplication::desktop();来获取屏幕的尺寸,但是怎样使程序界面自动适应尺寸呢?
离线浪漫天使
只看该作者 1楼 发表于: 2009-11-18
既然都得到屏幕的尺寸了,把界面设置成这个尺寸不就可以了么?
resize
sefFiexedSize();
.........
离线qihuabing
只看该作者 2楼 发表于: 2009-11-19
谢谢,楼上的。
可是我用了布局管理器QGridLayout对程序界面上的一些按钮和标签进行了布局,在分辨率为800*600的屏幕上这些按钮能够全部显示,但到了320*240的屏幕上只能显示一部分。那么怎样才能让这些按钮和标签按比例的缩放来适应屏幕的大小,而不是只能显示一部分?
离线yangfanxing
只看该作者 3楼 发表于: 2009-12-18
设置窗体strech。。。
PHPWind好恶心。。。不想看这种界面。。。
离线wd007

只看该作者 4楼 发表于: 2009-12-21
很可能你的布局设置的有些问题。还有就是几位提到的做法,设置伸缩因子,最小提示,等等。
欢迎访问我的博客,一起学习提高
http://blog.csdn.net/qter_wd007
离线chuck_gao
只看该作者 5楼 发表于: 2009-12-24
按你的意思不是分辨率的原因,800x600或者480x320只是屏幕大小。dpi才是对应的分辨率,可以用你刚才说的QApplication::desktop()返回的类中的一个function获得,具体函数名你自己找吧,带dpi的。得到这个值之后再根据屏幕的大小进行计算以适应新的屏幕。当然适应后原来48x48大小的按钮这些自然会变小,编码实现就可以了
Create Digital Life
离线yangfanxing
只看该作者 6楼 发表于: 2010-04-21
回 5楼(chuck_gao) 的帖子
LZ要的就是这个分辨率吧。。。
PHPWind好恶心。。。不想看这种界面。。。
离线听雨陌行

只看该作者 7楼 发表于: 2019-09-02
您好,请问您怎么解决的
快速回复
限100 字节
 
上一个 下一个