这篇文章主要介绍“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如何实现简单秒表功能”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。