QT設計秒表功能(跑步計時器)
本文實例為大傢分享瞭QT設計秒表功能的具體代碼,供大傢參考,具體內容如下
設計目標
1. 定時器開始
2.復位從0開始計時
3.記錄–把記錄的時間添加到QTextBrowser, append(時間)
4. QTime t(0,0,0) t = t.addMsec( number ) t.toString (“hh:mm:ss:zzz”)
定時器(QTimer)的使用
定時器—定時發送信號timeout
QTimer 定時器類
1.創建定時器類對象
QTimer mtimer;
2.把定時器信號與槽函數關聯
connect(&mtimer, &QTimer::timeout, this, &TimerWin::on_outBt_clicked);
3.啟動定時器
mtimer.start(1000);
4.停止定時器
mtimer.stop();
QT Creator組件佈局
運行效果
源碼
stopwatchwin.h
#ifndef STOPWATCHWIN_H #define STOPWATCHWIN_H #include <QMainWindow> #include <QTime> #include <QTimer> namespace Ui { class StopwatchWin; } class StopwatchWin : public QMainWindow { Q_OBJECT public: explicit StopwatchWin(QWidget *parent = nullptr); ~StopwatchWin(); void fun_clicked(); private slots: void on_pushButton_clicked(); void on_startBt_clicked(); void on_stopBtn_clicked(); void on_recordBtn_clicked(); void on_resertBt_clicked(); private: Ui::StopwatchWin *ui; //QTime t; QTime t = QTime(0,0,0,0); QTimer mtimer; }; #endif // STOPWATCHWIN_H
stopwatchwin.cpp
#include "stopwatchwin.h" #include "ui_stopwatchwin.h" #include <QDebug> StopwatchWin::StopwatchWin(QWidget *parent) : QMainWindow(parent), ui(new Ui::StopwatchWin) { ui->setupUi(this); //把定時器信號與槽函數關聯 connect(&mtimer, &QTimer::timeout, this, &StopwatchWin::fun_clicked); } StopwatchWin::~StopwatchWin() { delete ui; } void StopwatchWin::fun_clicked() { QString tim = t.toString("hh:mm:ss:zzz"); t = t.addMSecs(10); ui->lcdNumber->display(tim); qDebug()<<"1111"; } void StopwatchWin::on_startBt_clicked() { qDebug()<<"啟動定時器"; mtimer.start(10); } void StopwatchWin::on_stopBtn_clicked() { qDebug()<<"停止定時器"; if(mtimer.isActive()) { mtimer.stop(); } } void StopwatchWin::on_pushButton_clicked() { } void StopwatchWin::on_recordBtn_clicked() { QString tim = t.toString("hh:mm:ss:zzz"); ui->textBrowser->append(tim); } void StopwatchWin::on_resertBt_clicked() { t = QTime(0,0,0,0); }
main.cpp
#include "stopwatchwin.h" #include <QApplication> int main(int argc, char *argv[]) { QApplication a(argc, argv); StopwatchWin w; w.show(); return a.exec(); }
以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。