GUI умирают во время Emit на PyQT - PullRequest
0 голосов
/ 13 мая 2018

почему gui умирает, когда я использую функцию work (), я хочу показать какое-то слово в gui без блочного gui, поэтому решите использовать qthread, чтобы выполнить эту работу. когда я отлаживаю программу, когда программа запускается до «self._signal.emit (msg)», графический интерфейс умирает.

q1=Queue.Queue()

class MyApp(QtWidgets.QMainWindow, Ui_MainWindow):   
    def __init__(self):
        QtWidgets.QMainWindow.__init__(self)
        Ui_MainWindow.__init__(self)
        self.setupUi(self)      
        self.display1=textbrowser1display()
        self.display1._signal.connect(self.display11)
        self.display1.start()



class textbrowser1display(QThread):
    _signal=pyqtSignal()
    def __init__(self):
        super(textbrowser1display, self).__init__()

    def run(self):
        print "screen1 emit working"
        time.sleep(0.1)
        while global_list.display:
            if not global_list.q1.empty():
                msg=str(global_list.q1.get(block=True))
                self._signal.emit(msg)
            else:
                time.sleep(0.1)
class job():
    def work(self):
        global_list.q1.put("initbus",block=True)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...