gpt4 book ai didi

c++ - 如何将 QMainWindow 设置为模式窗口?

转载 作者:IT王子 更新时间:2023-10-29 01:06:36 26 4
gpt4 key购买 nike

我正在使用 QMainWindow 进行项目的 GUI 开发。我遇到的一个问题是阻止所有其他可见窗口获取输入,而其中一个正在运行。

我不能使用 QDialog。因为需要 QMainWindow 的丰富功能。

如何将特定窗口声明为模态窗口?

我尝试使用 QWidget::setWindowMODality()

这是一个演示程序,我试过了但没有用。

#include <QApplication>
#include <QMainWindow>
#include <QPushButton>




int main(int argc, char **argv){


QApplication a(argc, argv);


QMainWindow *w1 = new QMainWindow();
w1->resize(500,800);
w1->move(100,50);
w1->show();


QMainWindow *w2= new QMainWindow();
w2->resize(800,500);
w2->move(50,50);
w2->show();

w2->setWindowModality(Qt::ApplicationModal);


return a.exec();

}

最佳答案

先尝试设置模态标志,然后再显示小部件。

w2->setWindowModality(Qt::ApplicationModal);
w2->show();

您也可以使用 QWidget 构建工具栏、菜单栏和状态栏。

关于c++ - 如何将 QMainWindow 设置为模式窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21326549/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com