• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

Qt案例59——QTimer类实现定时器功能

武飞扬头像
wendy_ya
帮助4

一、项目介绍

本文介绍利用QTimer类实现定时器的定时功能。

QTimer还提供了一个简单的只有一次定时的函数singleShot()。一个定时器在100ms后触发处理函数animateTimeout()并且只触发一次。代码如下:

QTimer::singleShot( 100,this, SLOT(animateTimeout()) );

二、项目基本配置

新建一个Qt案例,项目名称为“TimeTest”,基类选择“QWidget”,取消选中创建UI界面复选框,完成项目创建。

三、UI界面设置

UI界面如下:

无UI界面

四、主程序实现

4.1 widget.h头文件

声明公共变量和私有槽函数:

public:
    QTimer *testTimer;
    int i=1;
private slots:
    void testFunction();

4.2 widget.cpp源文件

在构造函数中创建定时器,并将定时器超时信号和槽联系起来,并且开始运行定时器:

    //创建定时器
    testTimer = new QTimer(this);
    //将定时器超时信号与槽(功能函数)联系起来
    connect( testTimer,SIGNAL(timeout()), this, SLOT(testFunction()) );
    //开始运行定时器,定时时间间隔为1000ms
    testTimer->start(1000);

在析构函数中停止运行定时器:

    //停止运行定时器
    if (testTimer->isActive() )
        testTimer->stop();

定义槽函数:

void Widget::testFunction()
{
    qDebug("timer event %d",i  );
}

五、效果演示

完整效果如下:
学新通

如果没有看懂的话,完整代码可以参考:https://download.csdn.net/download/didi_ya/86587478


ok,以上便是本文的全部内容了,如果对你有所帮助,记得点个赞哟~

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhfgajci
系列文章
更多 icon
同类精品
更多 icon
继续加载