[180511]基于QTime类和QTimer类实现的计时器
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,计时器首先上图界面构建主要是lcdnumber 和textbrowser首先实现计时功能,要用到QTime类。QTime类基础函数QTime(int h, int m, int s = 0, int
千家信息网最后更新 2026年11月03日[180511]基于QTime类和QTimer类实现的计时器
计时器
首先上图
界面构建主要是lcdnumber 和textbrowser
首先实现计时功能,要用到QTime类。
QTime类
基础函数
QTime(int h, int m, int s = 0, int ms = 0)//构造函数
QTime addMSecs(int ms) const //对时间进行增改当然还要相应的addSec函数int hour() const //得到当前时间的小时,同理还有minute,second,msecint elapsed() const //返回从暂停到重新开始流逝的时间int restart()和void start() //重新开始和开始,注意restart有流逝时间的返回值int msecsTo(const QTime &t) const //比较两个Qtime类的时间差值静态成员
QTime currentTime() //获取当前时间QTimer类(计时器)
基础函数
void start(int msec) //每多少毫秒发送一次信号void stop() //停止发送信号信号
void timeout() //当休息时间结束时发送该信号使用
QTimer *timer = new QTimer(this);connect(timer, SIGNAL(timeout()), this, SLOT(update()));//update()是你想要调用的函数,当然也不一定是非要this接受timer->start(1000);实际上窗口的反复更新就是调用的Qtimer中的exec()函数来维持。但是反复更新带来了巨大的任务量,期待用线程的方式来解决(以后再谈)。
计时器分为精确型和粗糙型,但是无论是哪种计时器都依赖于它的操作系统和硬件性能。如果系统过忙不能保证计时器所有求的准确性,那么无论是哪种计时器都会发生偏差。
窗口的介绍
- LCDnumber:需要强调的是它无法获取显示的文本,如果的确需要文本,可以将它的display()函数连接一个槽函数。可以用来显示Qstring
- textbrowser:富文本编辑框,只读不可编辑。textedit类没有富文本可以编辑
功能的实现
- 点击开始键,它要能开始计时。那么我在Mainwindow的构造函数中建一个Qtime对象,来记录开始键按下瞬间计算机当前时间。当我按下暂停或者停止的时候再建立一个Qtime的对象,两个对象比较差值,差值即为记录的时间。
- 因为我做的LCD实时展示,刚开始要对LCD初始化
this->ui->lcdNumber->display("00:00:00:000");
再在Mainwindow构造函数中写一个Qtimer的对象,让LCD每毫秒更新一下时间。 - 更改一下按键上的bug:比如按下停止时不能暂停。
- 将打点的数据展示到textbrowser只需要appendText()(追加)。
- 停止时应该有一个清除键将所有打点记录清空并将LCD置零
- 暂停时暂停时间应该被剔除出去
时间
函数
计时器
信号
对象
文本
差值
更新
两个
功能
基础
系统
巨大
精确
粗糙
操作系统
上图
任务
偏差
准确性
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
科技互联网
中智农互联网科技
云之行互联网科技
鸠鸠互联网科技
港股互联网科技股
互联网 科技创业
有马互联网科技
为想互联网科技
鑫亿盛互联网科技
互联网科技缩写
汇久创客互联网科技
互联网科技寓意
彤创互联网科技有限公司
中国科技创新与世界互联网大会
用友工业互联网科技发展
互联网时代的科技公司
互联网公司高科技产品
广州千川互联网科技有限公司
启辰互联网科技
互联网科技大佬云集
什么是科技互联网
互联网与科技发展
互联网科技小贷
伴你行互联网科技有限公司
镁科技互联网资讯平台
重庆威客帮互联网科技
上海京穆互联网科技有限公司
张召忠谈中国互联网科技
信承诺互联网科技有限公司
互联网的黑科技实验室