• 26QTimer定时器的使用


    前面介绍过定时器事件(QTimerEvent),有个弊端,就是每启动一个定时器都要对应的ID。本次介绍在设计器中使用Qtimer。

    首先在设计器中添加一个LCD Number,和两个按钮。

    头文件

    #include <QTimer>

    QTimer *timer;

    按钮添加对应的槽函数,如下:

    //开始按钮

    void Widget::on_pushButton_clicked()

    {

       //启动定时器,每隔100ms,自动触发信号timeout()。

        if(timer->isActive()!=true)

            timer->start(100);        

    }

    //暂停按钮

    void Widget::on_pushButton_2_clicked()

    {

        if(timer->isActive()==true)

            timer->stop();

    }

    对应的信号的Lambda表达式

    Widget::Widget(QWidget *parent) :

        QWidget(parent),

        ui(new Ui::Widget)

    {

        ui->setupUi(this);

        timer=new QTimer(this);

    //信号timeout

        connect(timer,&QTimer::timeout,

                [=]()

                {

             //没启动一次定时器,进行加1

                   static int num=0;

                   ui->lcdNumber->display(num);

                   num++;

                }

        );

    }

    程序结果图

  • 相关阅读:
    Linux排序命令sort笔记
    Linux排序命令sort笔记
    Linux文本截取命令cut​笔记
    排序和搜索
    栈和队列
    链表
    顺序表
    Linux编辑器|gedit|vi|vim编辑器
    Linux简介
    简单学习Git
  • 原文地址:https://www.cnblogs.com/gd-luojialin/p/9215798.html
Copyright © 2020-2023  润新知