如果是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 表示不阻塞任何窗口,就是非模态。