当前位置: 首页 > news >正文

(QT-UI)十三、通过定时器,实时更新时间轴

   本系列预计实现

①刻度上方文字显示,

②时间轴拖动效果,

③时间轴刻度缩放,

④时间轴和其他控件联动显示,

⑤鼠标放置到时间轴,显示具体时间。

⑥通过定时器,实时更新时间轴

⑦时间轴上绘制时间片

 完整代码可见GitHub - 754816/QT_TimeLine: qt时间轴实现效果

1、基础思路

使用QTimer创建一个定时器,设置为每0.5秒触发一次,获取当前的系统时间,并且显示到时间轴上,看起来就像是时间轴随着系统时间更新

2、代码实现

在头文件中,添加QTimer和全局变量m_Timer

#include <QTimer>private:QTimer* m_Timer;

在源文件中,初始化,并且添加绑定槽函数,当设定时间间隔到期后,执行槽函数内的代码。最后通过start函数,启动定时器。

    m_Timer = new QTimer(this);connect(m_Timer, &QTimer::timeout, this, [=](){//获取当前系统时间QDateTime curDateTime = QDateTime::currentDateTime();//更新时间ui->widget->SetDateTime(curDateTime);});//设置启动间隔为500毫秒,即0.5秒m_Timer->start(500);m_Timer->stop;

当需要停止的时候,调用stop函数即可,后续只需要不断的start(500)和stop即可定时触发效果。


http://www.mrgr.cn/news/6587.html

相关文章:

  • git fetch和git pull的区别
  • 【日常记录-Docker】基于Alibaba Cloud Linux3安装nodejs18
  • Spring发送邮件性能优化?如何集成发邮件?
  • 2024.8.23 刷题总结
  • 【Linux】简易日志工具项目
  • 咸鱼之王手游内购修复无bug运营版联网架设+后台
  • laravel “Class \“Redis\“ not found“ 如何解决?
  • Objective-C中的广播站:深度解析NSNotificationCenter
  • NRC-SIM:基于Node-RED的多级多核缓存模拟器
  • 数据恢复技术-手动修复MBR-/NTFS分区
  • 来自科技时代的面试-AI面试
  • 自定义@ResponseBody以及SpringMVC总结
  • 维护和升级LabVIEW程序
  • VMWare中添加Ubuntu20.04.06镜像
  • 告别手动录入,自动化PDF转Excel工具精选
  • Python3学习(二)
  • 探索地理空间分析的新世界:Geopandas的魔力
  • java设计模式--组合模式、适配器模式
  • 克服编程挫折:从Bug的迷宫中寻找出口与面对算法保持冷静的策略
  • SpringCloud之一注册中心(Eureka)