qtimer定时器怎么用
TIPS:本文共有 669 个字,阅读大概需要 2 分钟。
qtimer定时器提供了重复和单次触发信号的定时器。
qtimer为定时器提供了一个高级别的编程接口。
很容易使用:
首先,创建一个qtimer,连接timeout()信号到适当的槽函数,并调用start(),然后在恒定的时间间隔会发射timeout()信号。
注意:当qtimer定时器的父对象被销毁时,它也会被自动销毁。
在qtimer定时器之模拟时钟中,1秒(1000毫秒)更新一次:
qtimer定时器 *timer = new qtimer定时器(this) connect(timer, SIGNAL(timeout()), this, SLOT(update())) timer->start(1000)
start()之后,每秒都会调用update()。
可以通过设置setSingleShot(true)来让定时器只执行一次。也可以使用静态函数qtimer::singleShot():
qtimer::singleShot(200, this, SLOT(updateCaption()))
在多线程程序中,可以在一个有事件循环的任何线程中使用qtimer。
使用QThread::exec(),从非GUI线程启动一个事件循环。
Qt使用定时器的线程关联,以确定哪个线程会发出timeout()信号。
正因为如此,你必须在它的线程中启动和停止定时器,不可能从另一个线程启动定时器。
作为一个特例,一旦窗口系统事件队列中的所有事件都已经被处理完,一个定时为0的qtimer就会到时间了。
当需要提供流畅的用户界面时,可以用这来做比较繁重的工作。
如果觉得《qtimer定时器怎么用》对你有帮助,请点赞、收藏,并留下你的观点哦!