我使用 QT4.8 创建一个应用程序,我有两台屏幕分辨率相同的显示器连接到 PC。如何使应用程序主窗口在两个显示器上全屏显示?
最佳答案
希望这段代码能以某种方式帮助你:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDesktopWidget> //INCLUDE THIS TO GET DESKTOP INFO
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
int x=0; //OUR X START POSITION
int y=0; //OUR Y START POSITION
QDesktopWidget *desktop = new QDesktopWidget();//OUR DESKTOP INSTANCE
/*HERE IM TAKING IN COUNT THAT WE HAVE SAME RESOLUTION ON ALL MONITOR,
SO NOW WE CAN GET WIDTH BY KNOWING THE QUANTITY OF MONITOR AND
MULTIPLYING MY THE FIRST MONITOR WIDTH*/
int width = desktop->screenCount()*desktop->screenGeometry(0).width();
int height = desktop->screenGeometry(0).height();//JUST GETTING MY FIRST
//MONITOR HEIGHT WHICH IS THE SAME IN ALL MONITORS
this->setGeometry(x,y,width,height);//NOW I SET MY FINAL GEOMETRY TO
//MY MAINWINDOW.
}
MainWindow::~MainWindow()
{
delete ui;
}
也许有一种更快、代码更少的方法,但您可以看到它是如何工作的……如果您需要其他任何东西,请告诉我。
关于c++ - QT 4.8 中的几个监视器全屏应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30188182/