Qt/QML编程学习之心得:Timer的使用(22)

Qt中timer计时器如何使用?

Qt/QML编程学习之心得:Timer的使用(22)_第1张图片

Timer的创建:

void InitTimer(){
   myTimer = new QTimer(q);
   myTimer->setInterval(100);  // 100ms
   myTimer->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(sender());
    if(timerTmp== myTimer)  {
        if(_OnlyOnce==true)   {
           _OnlyOnce= false;
           if(myTimer->isActive())  {
               myTimer->stop();
           }
           myTimer->start();
        }
    }
} 
 

你可能感兴趣的:(qt,qml)