QDialog的show()和exec()

void QDialog::show () [虚]
显示非模式或半模式对话框。控制立即返回到调用代码中。
对话框没有一个本地事件循环,所以你必须定时地调用QApplication::processEvents()来使对话框能够得到处理它的事件的机会。

如果在构造函数中,模式标记被设置为真,对话框将为半模式。

模态就是像程序弹出对话框这个对话框消失后才能操作程序

exec() 可控制的只有当前窗口
show()可在窗口间切换
 
show()是显示你的窗口.       exec是建立窗口的消息循环。
你的明白?这两个一般是一起出现的,否则,你的dialog或者window闪一下就没了。
有了exec,你的窗口会一直在那开着等待消息触发
 
      模态对话框,允许使用者在对话框与其他程式之间进行切换 但是,使用者不能切换到同一程式的另一个视窗,直到模态对话方块被清除为止。
非模态对话框,允许使用者在对话方块与其他程式之间进行切换
又可以在对话框与建立对话框的视窗之间进行切换。
简单点:查找与替换对话框是非模态对话框,而一些弹出对话框需要你做出选择后才能进行其他操作的是模态对话框。

你可能感兴趣的:(QDialog的show()和exec())