10. 定时器

定时器 1

利用事件 void  timerEvent ( QTimerEvent * ev)

启动定时器 startTimer( 1000) 毫秒单位

timerEvent 的返回值是定时器的唯一标示  可以和ev->timerId 做比较

   //启动定时器  
    id1 = startTimer(1000); //参数1  间隔  单位 毫秒

    id2 = startTimer(2000);



void Widget::timerEvent(QTimerEvent * ev)
{
    if(ev->timerId() == id1)
    {
        static int num = 1;

        //label2 每隔1秒+1
        ui->label_2->setText(  QString::number(num++));
    }

    if(ev->timerId() == id2)
    {
    //label3  每隔2秒 +1
    static int num2 = 1;
    ui->label_3->setText(  QString::number(num2++));
    }

}

定时器2

利用定时器类 QTimer

创建定时器对象 QTimer * timer = new QTimer(this)

启动定时器  timer->start(毫秒)

每隔一定毫秒,发送信号  timeout  ,进行监听

暂停  timer->stop

   //定时器第二种方式
    QTimer * timer = new QTimer(this);
    //启动定时器
    timer->start(500);

    connect(timer,&QTimer::timeout,[=](){
        static int num = 1;

        //label4 每隔0.5秒+1
        ui->label_4->setText(QString::number(num++));
    });


    //点击暂停按钮 实现停止定时器
    connect(ui->btn,&QPushButton::clicked,[=](){
        timer->stop();
    });

 

 

上一篇:破圈路上的五菱汽车,站在岔路口


下一篇:网站部署GEOTRUST EVSSL证书有哪些好处?