2.6.4 Qtimer定时器介绍

2022-01-12 13:58:17 浏览数 (1)

2.6.4 Qtimer定时器介绍

QTimer类提供了定时器功能,在指定的时间超时之后可以发出超时信号,可以单次或者重复定时。 QTimer使用方法比较简单:先创建一个QTimer定时器,使用start()函数设定定时的时间并开始计时。然后将timeout()信号连接到适当的槽函数。当定时的时间到达后,QTimer将会发出timeout()信号。注意:定时器的时间单位为毫秒(ms)。

创建一个重复的定时器:

代码语言:javascript复制
QTimer *timer = new QTimer(this); //创建定时器
connect(timer, SIGNAL(timeout()), this, SLOT(update()));  //关联槽函数
timer->start(1000);  //1000毫秒

创建成功后,每隔1000毫秒timer定时器将会发出一个timeout()信号。

下面介绍几个QTimer常用的成员函数。

1.修改定时器的时间

代码语言:javascript复制
int interval() const      //返回当前定时器的超时时间
void setInterval(int msec) //设置定时器的超时时间

2.设置定时器单发和重复属性

代码语言:javascript复制
bool isSingleShot() const  
void setSingleShot(bool singleShot) //设置定时器的单发和重复属性

默认情况下,定时器属性为false,支持重复超时触发。设置singleShot属性为true之后,定时器只会触发一次超时信号。

3.定时器启动与停止

代码语言:javascript复制
[slot] void QTimer::start() //启动定时器
[slot] void QTimer::start(int msec)  //启动定时器,并设置超时时间
[slot] void QTimer::stop()  //停止定时器
qt

0 人点赞