2

可能重复:
如何在不同的 Qt 线程中调用 GUI 元素?

我有一个应用程序,其中一个线程(不是主线程)需要访问 GUI 的元素(发送单击操作,显示消息框等)。我在 python 和 Qt 中工作,我也知道这是不可能的主线程。有没有办法做到这一点,我的意思是将我想要在线程中执行的操作发送到主线程?我试过了:de

f myfunc(q):

            self.emit(QtCore.SIGNAL('trie'))
            try: line = q.get_nowait()
         # or q.get(timeout=.1)
            except Empty: 
                pass #No hacer nada  si la linea de texto es null
            else: # got line
    # ... do something with line

                self.emit(QtCore.SIGNAL('trie')) 


        thread = threading.Thread(target=myfunc, args=(q,))
        thread.start()    

并连接:

self.connect(self.thread, QtCore.SIGNAL('tri'), self.prueba)

但它不起作用,我认为发件人无法识别:self.thread 这是我的错误:

Exception AttributeError: "'NoneType' object has no attribute 'GApp'" in <bound method VBoxManager.__del__ of <GNS3.VBoxManager.VBoxManager object at 0xa13e14c>
4

0 回答 0