定时器的使用

一、使用QTimer

1、声明QTimer对象

QTimer* mytimer ;

2、new出QTimer对象

mytimer = new QTimer();

3、设置指定时间开启QTimer对象

mytimer.start(1000);//1s

4、连接时间到了之后做的槽函数

QObject::connect(mytimer,SIGNAL(timerout()),this,SLOT(function()));

5、关闭定时器

mytimer.stop();//只是关闭,对象还在

6、其他

(1)、判断定时器是否正在工作

mytimer.isActive();

(2)、单次定时器

mytimer.singleShot();

二、使用timerEvent函数

首先这个timerEvent是QObject的虚函数,可以重写,当当前QObject子类中的使用了QObject::startTimer后,会自动调用和这个函数

1、在头文件中重写这个虚函数

void tiemrEevent(QTimerEvent *event);

2、在源文件中开始定时器

id1 = startTimer(1000);

id2 = startTimer(2000); 

id3 = startTimer(3000);

startTimer会返回timerID

3、在源文件中定义这个虚函数

void MyObject::timerEevet(QTimerEvent *event)

{

switch event.timerId

case id........

}

posted @ 2017-05-24 16:48  朱小勇  阅读(519)  评论(0)    收藏  举报