嗨,我已發送到我的主題工作人員鏈接到GUI並直接從QThread更新GUI信息。喜歡這裏:直接從Qthread更改GUI PyQt 5
class Worker(QThread):
def __init__(self, ui):
QThread.__init__(self)
self.running = False
self.ui = ui
def run(self):
self.running = True
while self.running:
info = self.check_info()
rows = len(info)
self.ui.tableWidget.setRowCount(rows)
self.ui.tableWidget.setColumnCount(6)
...
在主QMainWindow
我只是添加
def __init__(self, parent=None):
.......
self.myworker = Worker(self.ui)
.....
是在PyQt5這樣的解決方案很糟糕?我是PyQt的新手。謝謝。如果我的解決方案不好,請幫我修復它。
您不應該在主線程以外的其他線程中更新GUI,您必須使用信號和插槽將信息從輔助線程發送到主線程。 – eyllanesc
什麼是info類型? – eyllanesc
我可以通過信號發送任何信息,例如通過執行線程收到的字典列表嗎? – Hellbea