こんにちは、私はスレッドワーカーのGUIへのリンクを送信し、QThreadから直接GUI情報を更新しています。ここのように:私はちょうどQthread PyQt 5から直接GUIを変更する
def __init__(self, parent=None):
.......
self.myworker = Worker(self.ui)
.....
を追加し、メインQMainWindow
で
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)
...
はPyQt5で非常に悪いようなソリューションですか?私はPyQtの新機能です。どうも。私の解決策が悪い場合はplz私はそれを修正するために助けてください。
メインスレッド以外の別のスレッドでGUIを更新しないでください。信号とスロットを使用してセカンダリスレッドからメインスレッドに情報を送信する必要があります。 – eyllanesc
'info'のタイプは? – eyllanesc
スレッドを実行して受け取ったdictsのリストなど、シグナルを使って情報を送信できますか? – Hellbea