qt获得当前窗口所在屏幕的大小
假如这个窗口的指针为this,记得要加头文件哦
#include <QDesktopWidget>
#include <QApplication>
//获得当前屏幕是第几屏幕
int number = QApplication::desktop()->screenNumber(this);
//如果number是-1会出现崩溃,就是用默认0
if(number<0){
number=0;
}
//根据number获得当前窗口所在屏幕的大小
QSize size = QGuiApplication::screens().at(number)->geometry().size()
Qt中,QDesktopWidget封装了一系列用于多屏处理的函数,头文件:#include <QDesktopWidget>
1、使用QDesktopWidget::screenCount()获取当前操作系统的可用屏幕数
2、使用QDesktopWidget::primaryScreen()获取主屏幕的索引
3、使用QDesktopWidget::availableGeometry()获取可用屏幕大小的矩形
4、使用QDesktopWidget::screenGeometry(int screen = -1)获取指定索引下的屏幕。主屏幕的索引一般为0,这样我们就可以通过这个函数判断鼠标在哪个屏幕了,如,判断鼠标是否在主屏幕内:
if(QDesktopWidget::screenGeometry(0).contains(event->globalPos())//event为鼠标事件
5、使用setGeometry设置UI所在屏幕:
this->setGeometry(QDesktopWidget::screenGeometry(0));//设置UI到第一个屏幕
Tips:使用QApplication::activeWindow()可以获取拥有键盘输入焦点的应用程序顶级窗口
标签:窗口,Qt,QDesktopWidget,screenGeometry,屏幕,include From: https://www.cnblogs.com/zhuchunlin/p/17806079.html