是否有可能以編程方式切換QPushButton
?我有一個可檢查的QPushButton
用戶按下來啓動一個過程。過程完成後,如何將按鈕的狀態更改爲未選中狀態?以編程方式切換Python PyQt QPushbutton
runBtn = QPushButton('Run')
runBtn.setCheckable(True)
runBtn.clicked.connect(runProcess)
def runProcess():
time.sleep(5)
runBtn.uncheck() # how should this be done?
您在該部分所做的工作不應該花費太多時間,否則GUI線程被阻止 - 應用程序將不會響應,GUI也不會被重新繪製。您應該在不同的線程中做更昂貴的任務,並使用GUI線程使用信號/插槽進行通信。 – hluk
@ hluk:你當然是對的!我已經習慣了多次使用多線程的東西,我自己忘了這裏不是這種情況。我會更新我的迴應! –
如果耗時的任務是CPU限制的(由於python的GIL),線程將不會提供任何好處 - 爲此需要多處理。 – ekhumoro