QMainWindow独立

时间:2013-08-22 07:38:53

标签: qt qmainwindow

我有两个QMainWindows。我想在QMainWindow上显示一个带有exec()的QMessageBox时,其他QMainWindow不会被阻止。

两个QMainWindow必须是独立的。

这是怎么做到的?

2 个答案:

答案 0 :(得分:2)

它与QThread无关,Qt文档声明在QT应用程序中只能有 ONE GUI 线程。

你应该做的是设置模态标志以使对话框模态,因此它将与其父窗口模态相关。在执行对话框之前,请致电:

pDialog->setWindowModality( Qt::WindowModal );

不要忘记为对话框对象设置正确的

Qt文档说明: -

Modal Dialogs

A modal dialog is a dialog that blocks input to other visible windows in the 
same application. Dialogs that are used to request a file name from the user or 
that are used to set application preferences are usually modal. Dialogs can be 
application modal (the default) or window modal.

答案 1 :(得分:0)

使用show()方法显示每个QMainWindow而不是exec()