Qt QWidget Must construct a QApplication before a QWidget

一杯清酒邀明月發表於2024-03-14
1,有些QT寫的PC程式在執行的時候,會彈出下圖所示的錯誤提示框

2、原因是因為,在點選程式的關閉的時候,有其它的視窗沒有關閉,再次開啟造成的,如下圖所示,可能的原因是程式啟動後,在工作列在兩個圖示

3、如下圖所示,用滑鼠點選關閉其中一個視窗,另一個視窗並沒有關閉

4、當你再次開啟同一個程式的時候就會出現

QWidget Must construct a QApplication before a QWidget

這種錯誤的彈框了

5、解決這個問題,也非常簡單,只需要要在視窗關閉的時候,檢測並關閉另一個視窗就可以了,可以透過呼叫其它視窗的close函式關閉就可以了

6、還有一個比較簡單的方法就是在關閉視窗的時候,直接呼叫下面兩個函式之一,就可以關閉所有的視窗

QApplication::quit();

QApplication::exit();

相關文章