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()
可以获取拥有键盘输入焦点的应用程序顶级窗口