亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

QT如何實現秒表項目

發布時間:2022-08-04 15:53:20 來源:億速云 閱讀:166 作者:iii 欄目:開發技術

這篇文章主要介紹“QT如何實現秒表項目”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“QT如何實現秒表項目”文章能幫助大家解決問題。

源代碼目錄

QT如何實現秒表項目

mainwindow.ui窗口設計

QT如何實現秒表項目

mainwindow.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include<QTime>
#include<QTimer>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private slots:
    void updateTimeAndDisplay();


    void on_btn_start_clicked();

    void on_btn_stop_clicked();

    void on_btn_pause_clicked();

    void on_btn_log_clicked();

private:
    Ui::MainWindow *ui;
    QTimer *ptimer;
    QTime baseTime;
    QString showStr;

};

#endif // MAINWINDOW_H

mainwindow.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include<QString>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    this->ptimer=new QTimer;
    connect(this->ptimer,SIGNAL(timeout()),this,SLOT(updateTimeAndDisplay()));

}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::updateTimeAndDisplay(){
    QTime current=QTime::currentTime();
    int t=this->baseTime.msecsTo(current);
    QTime showTime(0,0,0,0);
    showTime=showTime.addMSecs(t);
    showStr=showTime.toString("hh:mm:ss:zzz");
    this->ui->lcdNumber->display(showStr);
}

void MainWindow::on_btn_start_clicked()
{
    this->baseTime=QTime::currentTime();
    this->ptimer->start(1);
    this->ui->btn_start->setEnabled(false);
}

void MainWindow::on_btn_stop_clicked()
{
    if(this->ui->btn_stop->text()=="停止"){
        this->ui->btn_stop->setText("清零");
        this->ptimer->stop();
    }else{
        this->ui->lcdNumber->display("00:00:00:000");
        this->ui->textBrowser->clear();
        this->ui->btn_stop->setText("停止");
        this->ui->btn_start->setEnabled(true);
    }

}

void MainWindow::on_btn_pause_clicked()
{
    static QTime pauseTime;
    if(this->ui->btn_pause->text()=="暫停"){
        pauseTime=QTime::currentTime();
        this->ptimer->stop();
        this->ui->btn_pause->setText("繼續");
    }else{
        QTime cut=QTime::currentTime();
        int t=pauseTime.msecsTo(cut);
        this->baseTime=this->baseTime.addMSecs(t);
        this->ptimer->start(1);
        this->ui->btn_pause->setText("暫停");

    }


}

void MainWindow::on_btn_log_clicked()
{
    this->ui->textBrowser->append(this->showStr);
}

main.cpp

#include "mainwindow.h"
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();

    return a.exec();
}

關于“QT如何實現秒表項目”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

qt
AI

大丰市| 会东县| 阳江市| 阿拉善右旗| 西平县| 确山县| 邯郸市| 肥东县| 新干县| 揭西县| 镶黄旗| 石渠县| 冀州市| 茌平县| 杭州市| 阿巴嘎旗| 临夏县| 隆子县| 玛沁县| 景德镇市| 忻州市| 仁化县| 泸水县| 蓬莱市| 公主岭市| 聊城市| 电白县| 建昌县| 邮箱| 三门峡市| 金溪县| 文成县| 扎兰屯市| 静宁县| 曲松县| 正宁县| 花莲市| 明光市| 南部县| 会理县| 邢台县|