定时器和基本事件的运用

如何设置一个定时器?

1.启动定时器 Id=startTimer(1000) //定时1秒

2.关闭定时器 killTimer(Id)  Id表示关闭哪个定时器

startTimerId= startTimer(1000);  //startTimerId表示定时器的名称以示区别
 
 
//事件处理,定时时间到自动进入timerEvent程序
void Widget::timerEvent(QTimerEvent *event)
{
 
 
 
 
    if(event->timerId()==startTimerId)  //判断是否为此定时器
    {
        gameTime--;
        ui->progressBar->setValue(gameTime);  //设置进度条
        if(gameTime==0)
        {
            killTimer(startTimerId); //关闭定时器
            QMessageBox::warning(this,"tips","time is over!");
            overTimerId=startTimer(5000); //倒计时5秒 启动另外一个定时器
        }
    }
    else if(event->timerId()==overTimerId)
  {
        killTimer(overTimerId);
      ui->textEdit->clear();
      ui->stackedWidget->setCurrentWidget(ui->init_page);  //切换显示页面
  }
 
 
 
 
}

 
 

当多个事件发生需要执行相同操作时,可设置如下方式

 QObject *obj=sender();  //自动识别哪个信号发送者
  QPushButton *button=(QPushButton*)obj;  //多个按键


猜你喜欢

转载自blog.csdn.net/qq_40239482/article/details/79907972
今日推荐