当前位置: 首页 > 编程笔记 >

pyQt5实时刷新界面的示例

东方和志
2023-03-14
本文向大家介绍pyQt5实时刷新界面的示例,包括了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)
  
  # 处理业务逻辑
  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):
    # 创建线程
    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实时刷新界面的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍Vue中用JSON实现刷新界面不影响倒计时,包括了Vue中用JSON实现刷新界面不影响倒计时的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Vue中用JSON实现刷新界面不影响倒计时的具体代码,供大家参考,具体内容如下 效果展示: 部分代码 重要的代码部分 实现原理 1.首次加载页面 点击开始 1).获取当前时间戳与要倒计时的时间相加获得要停止计时的时间 2).用loc

  • 本文向大家介绍微信小程序下拉刷新界面的实现,包括了微信小程序下拉刷新界面的实现的使用技巧和注意事项,需要的朋友参考一下 微信小程序下拉刷新界面的实现 利用onPullDownRefresh函数设置下拉刷新功能 一、在app.json中,将window选项中的enablePullDownRefresh设为true       或者在要刷新的界面的XXX.json中设置enablePullDownRe

  • 本文向大家介绍pyqt5 使用label控件实时显示时间的实例,包括了pyqt5 使用label控件实时显示时间的实例的使用技巧和注意事项,需要的朋友参考一下 如下所示: 以上这篇pyqt5 使用label控件实时显示时间的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

  • 本文向大家介绍AngularJS实现页面定时刷新,包括了AngularJS实现页面定时刷新的使用技巧和注意事项,需要的朋友参考一下 有时我们在前端可能会有这样的需求: 1、每隔一段时间刷新一下页面中的数据 2、根据需要可以暂停和启用刷新 接下来我们就来看下AngularJS的实现方法: 首先我们了解到AngularJS中$interval可以用来处理间歇性处理一些事情,那么我们的间歇性刷新就使用i

  • 本文向大家介绍Android中刷新界面的二种方法,包括了Android中刷新界面的二种方法的使用技巧和注意事项,需要的朋友参考一下 Android提供了Invalidate方法实现界面刷新,但是Invalidate不能直接在线程中调用,因为他是违背了单线程模型:Android UI操作并不是线程安全的,并且这些操作必须在UI线程中调用。 Android界面刷新方法有两种,分别是利用Handler和

  • 本文向大家介绍flutter局部刷新的实现示例,包括了flutter局部刷新的实现示例的使用技巧和注意事项,需要的朋友参考一下 局部刷新 我们在做项目的时候,都需要单独的去刷新一个值,而不是把整个界面都重绘。大家都知道setState是进行重绘的一个方法,他会执行生命周期的一个build,这将会使得整个界面来进行重绘。当然我们也会说把他进行状态管理,因为我个人不是很喜欢用provider进行状态管