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

效果

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

(0)

相关推荐

  • 基于实现Qt秒表设计

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

  • Qt实现简易秒表设计

    Qt–简易秒表设计(QTimer,Qtime,TableWiget应用),供大家参考,具体内容如下 效果图 使用QTimer和QTime两个类 思路: 1.计时功能:​ 利用QTimer中的定时器中断信号,设置每10毫秒触发一次timeout信号,在对应槽函数中对LCD number中显示的时间进行更新,即LCD屏中每十毫秒更新一次:对于时间的累加显示(QTimer是定时器)需要Qtime,在每一次timeout信号出发时,使Qtime类的time累加上10ms. 部分关键代码如下(代码并非连续

  • 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.利用基准时间与当前时间的差值来显示计时器

  • 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编写秒表的具体实现代码,供大家参考,具体内容如下 文件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 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 {  

  • QT实现简单计算器功能

    本文实例为大家分享了QT实现简单计算器功能的具体代码,供大家参考,具体内容如下 效果图: 新建工程,创建类MainWindow,基类是QMainWindow,声明变量和函数.槽 mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H   #include <QMainWindow> #include <QPushButton> #include <QLineEdit>   class MainWindow : pub

  • 使用Qt QSS绘制简单美化界面功能

    目录 使用Qt绘制一个简约美观的界面-使用QSS简单美化 基本控件布局 界面的简单美化 QSS 添加图片 方法1:添加资源 方法2:直接指定图片在计算机中的绝对 / 相对路径 使用Qt绘制一个简约美观的界面-使用QSS简单美化 基本控件布局 以绘制登录界面为例,创建一个继承自Qwidget的设计师界面类 为了使得控件排放整齐有序,可以使用layout布局进行辅助 首先,添加控件,然后按照类似css的页面布局方式,在控件下方添加一Vertical Spacer垫片,用于控制该控件与其他控件的下边距

  • JS使用setInterval实现的简单计时器功能示例

    本文实例讲述了JS使用setInterval实现的简单计时器功能.分享给大家供大家参考,具体如下: 使用setInterval实现计时,并且满60秒向分钟进一,满60分钟向小时进一. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>www.jb51.net JS计时器</title> <script> window.onload =

  • Qt Designer的简单使用方法

    在前面两节的例子中,主界面窗口的尺寸和标签控件显示的矩形区域等,都是用 C++ 代码编写的.窗口和控件的尺寸都是预估的,控件如果多起来,那就不好估计每个控件合适的位置和大小了. 用 C++ 代码编写图形界面的问题就是不直观,因此 Qt 项目开发了专门的可视化图形界面编辑器--Qt Designer(Qt 设计师).通过 Qt Designer 就可以很方便地创建图形界面文件 *.ui ,然后将 ui 文件应用到源代码里面,做到"所见即所得",大大方便了图形界面的设计. 本节就演示一下

  • JS实现简单路由器功能的方法

    本文实例讲述了JS实现简单路由器功能的方法.分享给大家供大家参考.具体实现方法如下: var wawa = {}; wawa.Router = function(){ function Router(){ } Router.prototype.setup = function(routemap, defaultFunc){ var that = this, rule, func; this.routemap = []; this.defaultFunc = defaultFunc; for (v

  • Java编程实现游戏中的简单碰撞检测功能示例

    本文实例讲述了Java编程中的简单碰撞检测功能.分享给大家供大家参考,具体如下: 今天在家正在写一个坦克大战的小游戏来玩,遇到了一个简单的圆和圆的碰撞检测的小问题, 碰撞检测的过程处理主要有以下三步: 1.碰撞检测(Collision Detection):返回两个或多个物体是否发生碰撞的布尔判断. 2.碰撞确定(Collision Determination):找到物体之间实际相交位置. 3.碰撞响应(Collision Response):针对两个物体之间的碰撞决定采取何种操作. 下面是关于

  • nodejs socket服务端和客户端简单通信功能

    本文实例讲述了通过node.js的net模块实现nodejs socket服务端和客户端简单通信功能,可以用作客户端对服务端的端口监听以及事件回执. server端代码 var net = require('net'); //模块引入 var listenPort = 8080;//监听端口 var server = net.createServer(function(socket){ // 创建socket服务端 console.log('connect: ' + socket.remoteA

随机推荐