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();
}

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

(0)

相关推荐

  • Qt编写秒表功能

    本文实例为大家分享了Qt编写秒表的具体实现代码,供大家参考,具体内容如下 文件widget.h #ifndef WIDGET_H #define WIDGET_H #include<QTimer> #include <QWidget> #include<QString> #include<QTime> namespace Ui { class Widget; }   class Widget : public QWidget {     Q_OBJECT  

  • 基于实现Qt秒表设计

    基于Qt秒表设计 这个只是虚拟机下的Dialog中设计的秒表,大家感兴趣的可以根据自己手机的秒表界面来设计,亦或是有别的想法也可以在ui中添加函数,或者是在ui界面自己添加调整.本篇将给除了给出Qt秒表设计例子之外还会为大家提供一些常用函数. 一.Qt绘图系统简介 Qt的绘图系统允许使用相同的API在屏幕和其它打印设备上进行绘制.整个绘图系统基于 QPainter,QPainterDevice和QPaintEngine三个类. QPainter用来执行绘制的操作: QPaintDevice则允许

  • QT实现秒表项目

    本文实例为大家分享了QT实现秒表项目的具体代码,供大家参考,具体内容如下 源代码目录 mainwindow.ui窗口设计 mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include<QTime> #include<QTimer> namespace Ui { class MainWindow; } class MainWindow : public QMai

  • 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)的使用 定时器---定时发送信号timeoutQTimer 定时器类 1.创建定时器类对象QTimer mtimer; 2.把定

  • 利用QT设计秒表功能

    本文实例为大家分享了QT设计秒表功能的具体代码,供大家参考,具体内容如下 一.窗口界面的设置 可以使用属性栏digitCount来设计此时0的初始位置 二.代码的编写 1.确定时间->每间隔一秒调用一个update函数(进行换算)或者直接调用QT里面的time类:2.确定显示的方式:3.每间隔一段时间调用显示来达到动态效果:4.这里应该查看Qtime/Qlcd的help手册5.在对定时器声明时要注意需要声明成指针,后面的槽函数发出信号者要求是指针类型:6.利用基准时间与当前时间的差值来显示计时器

  • js实现计时器秒表功能

    本文实例为大家分享了js实现计时器秒表功能的具体代码,供大家参考,具体内容如下 HTML <input type="text" id="timetext" value="00:00:00" readonly> <button type="button" onclick="start()">开始</button> <button type="button&q

  • 使用JavaScript实现网页秒表功能(含开始、暂停、继续、重置功能)

    效果图展示,感觉不错可以参考实例代码. 具体代码如下所示: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document

  • 基于QT设计一个春联自动生成器

    目录 1. 前言 2. 实现原理 3. 示例代码 3.1 获取春联接口 3.2 数据解析代码 3.3 token数据存储 1. 前言 春节是中国最隆重的传统节日,一到过年家家户户肯定是要贴春联:在春节前夕,会用大红纸张,加上浓墨书写祝福词语,在春节当天贴于门框两边,寓意着一年吉祥如意,还会将福字倒转贴于门上,有"福到临门"的意思.为了方便找到合适的春联句子,我这里就采用现成的自然语言处理接口实现了一个自动生成春联的软件,输入提示词就可以完成春联的生成,方便写春联时参考. 下面是实现的效

  • Android实现APP秒表功能

    本文实例为大家分享了Android实现APP秒表功能的具体代码,供大家参考,具体内容如下 这几天一直在看安卓,也正好赶上老师布置的作业,所以就做了一个秒表.自己参考了一下别人的图标,有了一些灵感所以顺便也设计了一下界面.下面先贴一下秒表的界面: 打开秒表后的第一个界面 点击开始计时,开始键变为暂停,记录和停止开始变实: 点击记录: 记录满了之后自动上移,通过滑动可以查看前面的: 点击暂停: 停止: 重新开始和记录: 双击返回键退出: 下面贴出Activity的代码: package com.ex

  • Android实现秒表功能

    本文实例为大家分享了Android实现秒表功能的具体代码,供大家参考,具体内容如下 设计完成一个秒表,具备启停功能,正确使用工作线程完成界面刷新 activity_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"     xmlns:app

  • java实现秒表功能

    利用javax.swing.Timer类设计并实现一个模拟秒表功能的应用程序.程序中显示不断递增的时间,同时包含允许用户启动和终止计时功能的代码,以及一个可将时间复位为0的按钮. import javax.swing.*; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.awt.BorderLayout;  import java.util.TimerTask;   impo

随机推荐