我对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());
这适用于我的主窗口。问题是所有子窗口小部件仍然显示在第一台监视器上。我有一个菜单小部件,它是在move()之后在构造函数中创建的centralWidgetFrame的一部分,但它不会在第二个监视器上创建。根据我的理解,子小部件应该在相对于父级的位置创建。
MainWindow按预期返回(1920,0)的pos(),子菜单小部件给我一个(0,0)的pos()。
我正在使用Qt 4.7.1。有什么建议吗?
答案 0 :(得分:0)
我认为这是因为您在其构造函数中移动和调整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();