QT(C++)中两种定时器的启动

QT(C++)中两种定时器的启动

重写timerEvent方法

1.重写timerEvent方法
2.使用startTimer();方法去启动定时器
startTimer方法的返回值为int类型,可以通过返回值判断是哪一个定时器

void timerEvent(QTimerEvent *e);
void Widget::timerEvent(QTimerEvent *e)
{
    static int num=1;
    static int m=1;
    if(e->timerId() ==id1){
           ui->label->setText(QString::number(num++));
    }

   if(e->timerId()==id2){
         ui->label2->setText(QString::number(m++));
   }

}

 id1 = startTimer(1000);
    id2= startTimer(2000);

QTimer类

通过定义个QTimer类 并通过start方法开启定时器,通过connect连接信号槽

 QTimer* timer = new QTimer(this);
    timer->start(500);
    connect(timer,&QTimer::timeout,this,[=](){
        static int i=1;
        ui->label3->setText(QString::number(i++));
    });

你可能感兴趣的:(Qt系列,c++,qt,ui)