Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2129135
  • 博文数量: 229
  • 博客积分: 7217
  • 博客等级: 上校
  • 技术积分: 3224
  • 用 户 组: 普通用户
  • 注册时间: 2009-02-19 17:23
个人简介

个人主页https://xugaoxiang.com,微信公众号: Dev_Club 或者搜索 程序员Club

文章分类

全部博文(229)

文章存档

2017年(1)

2016年(20)

2015年(23)

2013年(1)

2012年(23)

2011年(68)

2010年(62)

2009年(31)

分类: Python/Ruby

2016-04-07 23:24:54

软硬件环境

  • OS X EI Capitan
  • Python 3.5.1
  • PyQt 5.5.1

前言

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

QTimer示例

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

self.timer = QTimer(self)
self.count = 0
self.timer.timeout.connect(self.showNum)
self.startCount() 

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

startCount()方法

def startCount(self):
	self.timer.start(1000) 

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

showNum()槽函数

def showNum(self):
	count = count + 1
	print(count)
阅读(4975) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~