如何用Qt timerEvent实现简易秒表计时功能?

更新于
2026-10-10 13:17:20
1阅读来源:SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计381个文字,预计阅读时间需要2分钟。

如何用Qt timerEvent实现简易秒表计时功能?

原文:本文实例为大家分享了Qt+timerEvent实现简单秒表的总体代码,供大家参考,具体内容如下+

改写后:本文以Qt和timerEvent函数为例,展示了如何实现一个简单的秒表,代码内容简述如下+

本文实例为大家分享了Qt timerEvent实现简单秒表的具体代码,供大家参考,具体内容如下

#ifndef WIDGET_H #define WIDGET_H //头文件 #include<QWidget> #include<QObject> #include<QTimerEvent> #include<QTimer>   namespace Ui { class Widget; }   class Widget : public QWidget {     Q_OBJECT   public:     explicit Widget(QWidget *parent = 0);     ~Widget();     double i = 0;     //QString s = QString::number(i);   private:     Ui::Widget *ui;     //QTimer *myTimer;// 定义定时器对象     int id1,id3;     int id2 = 0;   protected:     void timerEvent(QTimerEvent *event); // 声明   private slots:     void on_pushButton_clicked();     void on_pushButton_3_clicked();     void on_pushButton_2_clicked(); };   #endif // WIDGET_H

//widget.cpp #include "widget.h" #include "ui_widget.h" #include<QObject> #include<QTimer> #include<QDebug>   Widget::Widget(QWidget *parent) :     QWidget(parent),     ui(new Ui::Widget) {     ui->setupUi(this);     ui->lineEdit->setFixedHeight(60);     ui->lineEdit->setFont(QFont( "Arial" , 32 ));     ui->lineEdit->setText("0.0");   }   Widget::~Widget() {     delete ui; }     void Widget::timerEvent(QTimerEvent *event) {     // 判断是哪个定时器     if(event->timerId() == id1){         qDebug() << "timer1";         i = i+0.1;         QString s = QString::number(i);         ui->lineEdit->setText(s);     }   } void Widget::on_pushButton_clicked()  //开始 {     id1 = startTimer(100);     //timer_1 = startTimer(100);   }   void Widget::on_pushButton_3_clicked()  //停止 {     killTimer(id1); }   void Widget::on_pushButton_2_clicked()  //记录 {     QString s = ui->lineEdit->text();     ui->listWidget->addItem(s);     id2=id2+1;     QString id2s = QString::number(id2);     ui->label_2->setText("记录次数:"+id2s); }

ui

效果

如何用Qt timerEvent实现简易秒表计时功能?

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。

本文共计381个文字,预计阅读时间需要2分钟。

如何用Qt timerEvent实现简易秒表计时功能?

原文:本文实例为大家分享了Qt+timerEvent实现简单秒表的总体代码,供大家参考,具体内容如下+

改写后:本文以Qt和timerEvent函数为例,展示了如何实现一个简单的秒表,代码内容简述如下+

本文实例为大家分享了Qt timerEvent实现简单秒表的具体代码,供大家参考,具体内容如下

#ifndef WIDGET_H #define WIDGET_H //头文件 #include<QWidget> #include<QObject> #include<QTimerEvent> #include<QTimer>   namespace Ui { class Widget; }   class Widget : public QWidget {     Q_OBJECT   public:     explicit Widget(QWidget *parent = 0);     ~Widget();     double i = 0;     //QString s = QString::number(i);   private:     Ui::Widget *ui;     //QTimer *myTimer;// 定义定时器对象     int id1,id3;     int id2 = 0;   protected:     void timerEvent(QTimerEvent *event); // 声明   private slots:     void on_pushButton_clicked();     void on_pushButton_3_clicked();     void on_pushButton_2_clicked(); };   #endif // WIDGET_H

//widget.cpp #include "widget.h" #include "ui_widget.h" #include<QObject> #include<QTimer> #include<QDebug>   Widget::Widget(QWidget *parent) :     QWidget(parent),     ui(new Ui::Widget) {     ui->setupUi(this);     ui->lineEdit->setFixedHeight(60);     ui->lineEdit->setFont(QFont( "Arial" , 32 ));     ui->lineEdit->setText("0.0");   }   Widget::~Widget() {     delete ui; }     void Widget::timerEvent(QTimerEvent *event) {     // 判断是哪个定时器     if(event->timerId() == id1){         qDebug() << "timer1";         i = i+0.1;         QString s = QString::number(i);         ui->lineEdit->setText(s);     }   } void Widget::on_pushButton_clicked()  //开始 {     id1 = startTimer(100);     //timer_1 = startTimer(100);   }   void Widget::on_pushButton_3_clicked()  //停止 {     killTimer(id1); }   void Widget::on_pushButton_2_clicked()  //记录 {     QString s = ui->lineEdit->text();     ui->listWidget->addItem(s);     id2=id2+1;     QString id2s = QString::number(id2);     ui->label_2->setText("记录次数:"+id2s); }

ui

效果

如何用Qt timerEvent实现简易秒表计时功能?

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。