徐高翔的个人网站

PyQt5系列教程(八)定时器QTimer的使用

2017-06-18

软硬件环境

  • windows 10 64bit
  • Miniconda3 with python 3.7.1
  • PyQt5

前言

如果需要在程序中周期性地进行某项操作,比如检测某种设备的状态,就会用到定时器。本文就来看看PyQT5中的QTimer的使用。

QTimer示例

假设要实现每过一秒计数一次这个功能,来看看QTimer怎么实现?

1
2
3
4
self.timer = QTimer(self)
self.count = 0
self.timer.timeout.connect(self.showNum)
self.startCount()

首先实例化一个timer,然后将它的timeout信号和自定义的showNum方法绑定。最后调用startCount这个方法开始这个定时器。上述几条语句一般放在window或者form的构造函数里。完整的例子自己去写写吧,也很简单。

startCount方法

1
2
3
def startCount(self):

self.timer.start(1000)

timer.start()时间参数的单位是毫秒,这点要注意,相当于时间每过一秒,timertimeout()就会被触发一次,而信号timeout又是和槽showNum()绑定在一起的,所以showNum也会被调用一次。

showNum槽函数

1
2
3
4
def showNum(self):

self.count = self.count + 1
print(self.count)

备注

为了便于保存记录,在Github创建了一个工程,地址是: https://github.com/xugaoxiang/learningPyQt5,后续会把所有的代码、文档以及博文链接都放在上面。

本文链接 https://xugaoxiang.com/2017/06/18/PyQt5系列教程(八)定时器QTimer的使用/

推荐文章(由hexo文章推荐插件驱动)

使用支付宝打赏
使用微信打赏

请博主喝咖啡!