pyQt5實時刷新界面的示例
更新時間:2019年06月25日 11:35:45 作者:五千年前的后羿
今天小編就為大家分享一篇pyQt5實時刷新界面的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
如下所示:
from PyQt5.QtCore import QThread , pyqtSignal, QDateTime , QObject from PyQt5.QtWidgets import QApplication, QDialog, QLineEdit import time import sys class BackendThread(QObject): # 通過類成員對象定義信號 update_date = pyqtSignal(str) # 處理業(yè)務邏輯 def run(self): while True: data = QDateTime.currentDateTime() currTime = data.toString("yyyy-MM-dd hh:mm:ss") self.update_date.emit( str(currTime) ) time.sleep(1) class Window(QDialog): def __init__(self): QDialog.__init__(self) self.setWindowTitle('PyQt 5界面實時更新例子') self.resize(400, 100) self.input = QLineEdit(self) self.input.resize(400, 100) self.initUI() def initUI(self): # 創(chuàng)建線程 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() # 將當前時間輸出到文本框 def handleDisplay(self, data): self.input.setText(data) if __name__ == '__main__': app = QApplication(sys.argv) win = Window() win.show() sys.exit(app.exec_())
以上這篇pyQt5實時刷新界面的示例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章: