在我的程序中,我需要在线程类中调用一个主窗口函数。我尝试了很多方法,但是我得到的GUI不是安全错误,我没有得到输出,这是我的示例代码,任何人都可以帮助我如何调用线程类中的函数。请帮帮我。
我的示例代码:
import time
from PyQt4 import QtGui,QtCore
global p
class OpenOMX(QtCore.QThread):
statusChanged = QtCore.pyqtSignal(int)
def __init__(self):
QtCore.QThread.__init__(self)
def run(self):
while True:
# try:
self.statusChanged.emit(status)
print "connect"
# except:
# pass
class Table_Program(QtGui.QMainWindow):
def __init__(self, parent=None):
super(Table_Program, self).__init__(parent)
self.w = QtGui.QWidget()
self.openOMX = OpenOMX()
self.openOMX.statusChanged.connect(self.click_me)
self.mainLayout = QtGui.QVBoxLayout(self.w)
self.btn = QtGui.QPushButton("click")
self.btn.clicked.connect(self.click_me)
self.mainLayout.addWidget(self.btn)
self.setCentralWidget(self.w)
def click_me(self):
print "click me"
if __name__ == '__main__':
import sys
global p
app = QtGui.QApplication(sys.argv)
p = Table_Program()
p.show()
app.exec_()