QTimer
one_soft_stone 2019-01-02 11:09:39 1240 收藏
展开
QTimer是一个计时器类
它的使用分三步,创建对象,连接signal和slot函数,start()
-
QTimer *timer = new QTimer(this);
-
connect(timer, SIGNAL(timeout()), this, SLOT(update()));
-
timer->start(1000);
this指针对应到类中
其中,SIGNAL(timeout())
表示:每当计时结束,计时器归零并重新计时,并发送一个信号激活slot函数。
而 timer->start(1000);
当中的1000,就是1000毫秒的意思,表示每次timeout的时间间隔是1000ms
如果我们想让这个计时器只计时一次,那么必须使用void setSingleShot(bool singleShot)
函数。
-
QTimer *timer = new QTimer(this);
-
connect(timer, SIGNAL(timeout()), this, SLOT(update()));
-
timer->setsetSingleShot(true)
-
timer->start(60000);
这样计时器只会倒计时1分钟,然后结束。
当然我们还可以改变计时周期
-
void setInterval(int msec)