pyQt5实时刷新界面的示例
如下所示:
fromPyQt5.QtCoreimportQThread,pyqtSignal,QDateTime,QObject
fromPyQt5.QtWidgetsimportQApplication,QDialog,QLineEdit
importtime
importsys
classBackendThread(QObject):
#通过类成员对象定义信号
update_date=pyqtSignal(str)
#处理业务逻辑
defrun(self):
whileTrue:
data=QDateTime.currentDateTime()
currTime=data.toString("yyyy-MM-ddhh:mm:ss")
self.update_date.emit(str(currTime))
time.sleep(1)
classWindow(QDialog):
def__init__(self):
QDialog.__init__(self)
self.setWindowTitle('PyQt5界面实时更新例子')
self.resize(400,100)
self.input=QLineEdit(self)
self.input.resize(400,100)
self.initUI()
definitUI(self):
#创建线程
self.backend=BackendThread()
#连接信号
self.backend.update_date.connect(self.handleDisplay)
self.thread=QThread()
self.backend.moveToThread(self.thread)
#开始线程
self.thread.started.connect(self.backend.run)
self.thread.start()
#将当前时间输出到文本框
defhandleDisplay(self,data):
self.input.setText(data)
if__name__=='__main__':
app=QApplication(sys.argv)
win=Window()
win.show()
sys.exit(app.exec_())
以上这篇pyQt5实时刷新界面的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。