如何在qt中检测屏幕分辨率?

Posted

技术标签:

【中文标题】如何在qt中检测屏幕分辨率?【英文标题】:How to detect screen resolution in qt? 【发布时间】:2015-05-18 07:02:02 【问题描述】:

我使用 Linux 内核的 ioctl 方法在 Intel 平台中设置帧缓冲区的分辨率。我能够成功设置此分辨率(再次验证获取此参数)但没有进入 qt。当我检查桌面几何时,它是我在启动时设置的(1920 * 1024),也没有得到 resizeevent()。有人能说下哪里缺……吗?

【问题讨论】:

我也连接了调整大小的信号,但它也不起作用。 connect(QApplication::desktop(), SIGNAL(resized(int)), this, SLOT(resized(int))); 【参考方案1】:

试试这个:

QDesktopWidget widget;
QRect mainScreenSize = widget.availableGeometry(widget.primaryScreen());

【讨论】:

我也试过了,但没有得到任何几何更新 可能是您使用的 Qt 平台插件没有注意到分辨率发生了变化。哪个平台插件,哪个 Qt 版本?它是最新的吗?您检查过 Qt 错误跟踪器的错误吗?

以上是关于如何在qt中检测屏幕分辨率?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 python/kivy/pyjnius 检测 Android 中的屏幕分辨率?

如何使用 JavaScript 检测屏幕分辨率?

Javascript检测屏幕分辨率,更改css,相应裁剪图像

从 Qt 更改屏幕分辨率?

qt中怎样使程序界面自动适应屏幕分辨率

Qt安卓。获取设备屏幕分辨率