Qt设置模态对话框的方法

如果是Qdialog:

QDialog dialog(this);
dialog.exec();

或者通过show()函数,前提是通过setModal()设置为模态。

QDialog *dialog = new QDialog(this);
dialog->setModal(true);
dialog->show();

如果是QWidget:

QWidget *w = new QWidget(this);
w->setWindowModality(Qt::ApplicationModal);

Qt::ApplicationModal 表示该窗口阻塞程序的所有窗口。

Qt::WindowModal 表示阻塞它的父窗口,所有祖先窗口以及它们的子窗口。

Qt::NonModal 表示不阻塞任何窗口,就是非模态。

发布了133 篇原创文章 · 获赞 175 · 访问量 15万+

猜你喜欢

转载自blog.csdn.net/c_shell_python/article/details/101051150