Qt定时器的两种启动方式

一、简述Qt定时器的两种启动方式

  1. 根据通过一个int变量在定时器事件启动
  2. 通过QTimer变量发出的timeout信号启动

二、通过int变量启动定时器

步骤:

1. 在类头文件中定义一个整形的成员变量和导入相应头文件

#include <QTimer>
#include <QTimerEvent>

int m_timer;	

2. 将timerEvent函数添加在类头文件中

void timerEvent(QTimerEvent *event);

该类实现如下:

void CTimerTest::timerEvent(QTimerEvent *event)
{
    Q_UNUSED(event);
    qDebug() << __FUNCTION__;
}

3. 在需要开始定时器位置启动定时器(定义好后每隔定义的事件都会调用timerEvent事件)

    //启动定时器,每秒一次(单位为毫秒)
    m_timer = startTimer(1000);

三、 通过QTimer变量发出的timeout信号启动

步骤:

1. 在类头文件中定义一个整形的成员变量和导入相应头文件

#include <QTimer>

QTimer *m_timer;	

2. 在类头文件中定义和timeout信号连接的槽函数

public slots:
    void on_timeOut();

该类实现如下:

void CTimerTest::on_timeOut()
{
    qDebug() << __FUNCTION__;
}

3. 启动定时器,并连接其槽函数

	//new出指针对象
    m_timer = new QTimer;
    //启动定时器,每秒一次(单位为毫秒)
    m_timer->start(1000);
    //连接对应的信号槽
    connect(m_timer, &QTimer::timeout, this, &CTimerTest::on_timeOut);

总结

定时器在很多时候都会使用,如测试连接是否断开,需要隔一段时间做某事等情况;第一种方法适合定时器使用较少的时候,第二种方法适合一个类中包含多个定时器的情况

友情提示——哪里看不懂可私哦,让我们一起互相进步吧
(创作不易,请留下一个免费的赞叭 谢谢 ^o^/)

注:文章为作者编程过程中所遇到的问题和总结,内容仅供参考,若有错误欢迎指出。
注:如有侵权,请联系作者删除

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lw向北.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值