我对Qt环境很陌生。我有一个要在第二个监视器上显示的应用程序。当前,在MainWindow构造函数中,我正在使用以下代码将窗口移至第二个监视器。
主要():
MainWindow w;
w.showFullScreen();
MainWindow()构造函数:
QRect screenres = QApplication::desktop()->screenGeometry(1);
this->move(QPoint(screenres.x(), screenres.y()));
this->resize(screenres.width(), screenres.height());
这适用于我的主窗口。问题在于所有子窗口小部件仍会显示在第一个监视器上。我有一个菜单小部件,它是centralWidgetFrame的一部分,在move()之后在构造函数中创建,但是没有在第二个监视器上创建。根据我的理解,应该在相对于其父项的位置中创建子项小部件。
MainWindow按预期返回(1920,0)的pos(),子菜单小部件为我提供(0,0)的pos()。
我正在使用Qt 4.7.1。有什么建议么?
最佳答案
我认为这是因为要在MainWindow的构造函数中移动并调整其大小。
在main()中执行:
MainWindow w;
QRect screenres = QApplication::desktop()->screenGeometry(1);
w.move(QPoint(screenres.x(), screenres.y()));
w.resize(screenres.width(), screenres.height());
w.showFullScreen();