模态对话框就是指在子对话框弹出时,焦点被强行集中于该子对话框,子对话框不关闭,用户将无法操作其他的窗口。非模态相反,用户仍然可以操作其他的窗口,包括该子对话框的父对话框。
如果从线程角度来讲,模态对话框实际上是线程阻塞的,也就是子对话框是一个线程,但是在创建这个子线程之后,父窗口就阻塞了;模态对话框则不是阻塞型的线程模型,父子线程可以并行运行。
setWindowModality 函数的参数3个可取值!! NonModal、WindowModal、ApplicationModal 分别对应
默认情况下的 QDialog::show() QDialog::open() QDialog::exec() http://blog.csdn.net/dbzhang800/article/details/6300416 前半部分可供参考。
widget.setWindowModality(Qt.ApplicationModal)