PyQt这样写为什么前几天还能跑,过几天就不行了,,,
self.loginBtn = QPushButton("登录")
self.loginBtn.setObjectName("loginBtn")
self.loginBtn.clicked.connect(self.loginFunc)
def loginFunc(self):
if self.passwordBox.text() == "" or self.accountBox.text() == "":
self.otherLabel.setText("""<font style="color:red">账号密码不能为空</font>""")
return
self.childWorker = worker(account = self.accountBox.text(),password = self.passwordBox.text(),x=self.x()+350,y=self.y()+150)
self.childWorker.login.connect(self.callback)
self.childWorker.start()
class worker(QThread):
login = pyqtSignal(str)
# scanover = pyqtSignal(str)
def __init__(self,parent=None,account=None,password=None,x=0,y=0):
super(worker,self).__init__(parent)
self.account = account
self.password = password
self.x = x
self.y = y
def __del__(self):
self.wait()
def run(self):
self.login.emit("""<font style="color:#0f0">正在进行内部操作,请等待...</font>""")
app.processEvents()
...
self.eventloop = QEventLoop()
self.qrlabel = QLabel()
self.qrlabel.show()
.....
self.childWorker2 = worker2(qrlabel = self.qrlabel)
self.childWorker2.scan.connect(self.isLoginSuccess)
self.childWorker2.start()
self.childWorker2.quitevent.connect(self.loop)
self.eventloop.exec_()
class worker2(QThread):
scan = pyqtSignal(str)
quitevent = pyqtSignal(str)
def __init__(self,parent=None,qrlabel=None):
super(worker2,self).__init__(parent)
self.qrlabel = qrlabel
def __del__(self):
self.wait()
def run(self):
app.processEvents()
while True:
....
self.quitevent.emit("loop可以退出了")
求帮助,,,
在线等,,,
一级子进程中的QLabel,show不出来~~到那就会卡死