Qt中timer计时器如何使用?
Timer的创建:
void InitTimer(){myTimer = new QTimer(q);myTimer->setInterval(100); // 100msmyTimer->setSingleShot(true); //只运行一次的计时器QObject::connect(myTimer,SIGNAL(timeout()),q,SLOT(onTimeOut()));myTimer->start();
}
Timer的槽函数:
timer在发出超时timerout()的signal消息后,结合上面的connect,可以知道其处理槽函数为:onTimerOut()。
void MyWidget::onTimeOut()
{QTimer* timerTmp = static_cast<QTimer*>(sender());if(timerTmp== myTimer) {if(_OnlyOnce==true) {_OnlyOnce= false;if(myTimer->isActive()) {myTimer->stop();}myTimer->start();}}
}
</