Pyqt5 中 QDialog show 和 exec 的區(qū)別
新手不必深究這個問題纸厉,知道有差別即可连霉。
QDialog的顯示有兩個函數(shù)show()和exec()。他們的區(qū)別在參考文檔上的解釋如下:
show():
顯示一個非模式對話框搁廓〔浦控制權即刻返回給調用函數(shù)。
彈出窗口是否模式對話框沦童,取決于modal屬性的值仑濒。
原文:Shows the dialog as a modeless dialog. Control returns immediately to the calling code.
The dialog will be modal or modeless according to the value of the modal property.
exec():
顯示一個模式對話框叹话,并且鎖住程序直到用戶關閉該對話框為止。函數(shù)返回一個DialogCode結果躏精。
在對話框彈出期間渣刷,用戶不可以切換同程序下的其它窗口,直到該對話框被關閉矗烛。
原文:Shows the dialog as a modal dialog, blocking until the user closes it. The function returns a DialogCode result.
Users cannot interact with any other window in the same application until they close the dialog.
父類實例化子類 直接用.show()方法閃退辅柴, 所以要實例化為父類的全局變量 or 執(zhí)行exec_() 方法