Qt - QTimer(定时器)

基本使用方式:

  • 多次定时器
QTimer *timer = new QTimer(this);
//timer->setInterval(1000);//设置间隔时间
connect(timer, SIGNAL(timeout()), this, SLOT(update()));
timer->start(1000);//start之后,设置间隔时间并启动定时器,每隔一秒触发一次槽函数

 

  • 单次定时器

注意:可以通过设置setSingleShot(true)来让定时器只执行一次。也可以使用静态函数QTimer::singleShot():

1. 下面我们用三种实现方式吧,来实现定时器的单次触发;

实现一

使用QTimer的 setSingleShot 接口实现单次定时器。

 
QTimer *pTimer = new QTimer(this);
connect(pTimer,SIGNAL(timeout()),this,SLOT(slot_Timerout()));
pTimer->setSingleShot(true);
pTimer->start(1000);

实现二

使用QTimer的 singleShot 接口实现单次定时器。

 
QTimer *pTimer = new QTimer(this);
pTimer->singleShot(10000,slot_Timerout);

实现三

使用QTimer的 singleShot 静态接口实现单次定时器,实现简洁,推荐使用。

 
QTimer::singleShot(1000,this,SLOT(slot_Timerout()));
QTimer::singleShot(1000,slot_Timerout);//同上,就是参数不同
posted @   [BORUTO]  阅读(338)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
点击右上角即可分享
微信分享提示