我正在使用Qt,但是我不知道如何居中QMainWindow窗口。我写了这段代码,但是没有用。提前致谢。
QRect screenGeometry = QApplication::desktop()->screenGeometry();
int x = (screenGeometry.width() - w->width()) / 2;
int y = (screenGeometry.height() - w->height()) / 2;
w->move(x, y); // w is a QMainWindow pointer
我得到这个:
最佳答案
这些功能已过时:
QApplication::desktop()->screenGeometry()
QApplication::desktop()->availableGeometry()
QDesktopWidget::screen()
改用QScreen:#include "MainWindow.h"
#include "ui_MainWindow.h"
#include <QScreen>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
move(QGuiApplication::screens().at(0)->geometry().center() - frameGeometry().center());
}
关于c++ - 如何居中QMainWindow?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47973666/