> 文档中心 > Qt定时器的两种启动方式

Qt定时器的两种启动方式


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

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

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

步骤:

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

#include #include 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 *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^/)

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

古龙中文句子网