如何在不同的Qt线程中调用GUI元素?

时间:2012-12-02 16:41:26

标签: python multithreading qt user-interface

  

可能重复:
  How to call GUI elements in different Qt threads?

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

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>

0 个答案:

没有答案