Qt获取屏幕分辨率

http://my.oschina.net/u/1255773/blog/159557

原 Qt获取屏幕分辨率

发表于1年前(2013-09-06 11:00)   阅读(546) | 评论(0 3人收藏此文章, 我要收藏
0

3月21日 深圳 OSC 源创会正在报名中,送华为海思开发板

摘要 使用Qt函数获取屏幕分辨率

Qt获取屏幕分辨率

需要使用到QDesktopWidget,相关头文件引用:

#include <QDesktopWidget>

单个屏幕

只获取当前屏幕大小,较简单:

QDesktopWidget *desktop = QApplication::desktop();
Qrect screen = desktop->screenGeometry();
int screenWidth = screen.width();
int screenHeight = screen.height();

多个屏幕

很多时候存在多个屏幕,如:存在主屏和扩展屏。则需要分别对这两个屏幕获取大小:

QDesktopWidget *desktop = QApplication::desktop();
int screenNum = desktop->screenCount();
for (int i=0; i<screenNum; i++)
{
    Qrect screen = desktop->screenGeometry();
    qDebug("screen %d, width %d, height %d", i, screen.width(), screen.height());
}

Qt的帮助文档提到一个问题,一般程序都希望一个窗口落在一个屏幕内,
在此输入图片描述

这需要用到:

int primaryScreen () const

另外,提到一个虚拟桌面的概念,没太明白是干啥的。

 

原文地址:https://www.cnblogs.com/okgogo2000/p/4319693.html