PySide是新手,因此可能在這裏誤解了基礎知識。Python + QT:如何製作非GUI屏蔽加載屏幕?
我正在寫一個GUI應用程序,將啓動,然後執行各種系統檢查:
- 檢查HW存在
- 檢查網絡連接
- 檢查API連接
在整個過程中,它會通知用戶它正在做什麼以及結果。
完成檢查(並通過) - 它們將進入程序初始屏幕。
目前,我一直試圖在定時器運行檢查,以QApplication.processEvents
:
if __name__ == '__main__':
app = QApplication(sys.argv)
rebadger = rebadger()
rebadger.initUI()
rebadger.show()
tT = QTimer()
tT.setSingleShot(False)
tT.timeout.connect(QApplication.processEvents)
tT.start(1000)
rebadger.rebadgeObj.runChecks()
sys.exit(app.exec_())
但一切仍阻止,直到檢查都做。
我已經在QThread
文檔,但我發現它,而很難總結我周圍的事件邏輯頭(是否來自嚴格的PHP背景)
任何協助草擬的骨架如何實現這一點將不勝感激。
這是完美的:進度從線程回傳,線程爲漸進/排序,GUI不是被阻止,並且生命可以在之後繼續。你能否稍微解釋一下** @ core.pyqtSlot(str)**參考嗎? – swx
'MyProcess'包含一個未被使用的對標籤('self.out')的引用,它可能試圖使用它的 線程內的setText()方法。據我所知,這不應該做,所以這個變量沒有意義。 – TNT
@TNT是的,你是對的,但我不使用它,也許它仍然是我的答案的早期版本,直到現在我還沒有意識到;)謝謝 –