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

2024-01-09 18:51:23

Qt中timer计时器如何使用?

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<QTimer*>(sender());
    if(timerTmp== myTimer)  {
        if(_OnlyOnce==true)   {
           _OnlyOnce= false;
           if(myTimer->isActive())  {
               myTimer->stop();
           }
           myTimer->start();
        }
    }
}</

文章来源:https://blog.csdn.net/weixin_49369227/article/details/135428214
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。