Qt实战案例(60)——利用QTimer类实现实时时间功能

目录

一、项目介绍

本文介绍利用QTimer类实现实时时间功能并在状态栏中进行显示。

二、项目基本配置

新建一个Qt案例,项目名称为"TimeTest",基类选择"QWidget",取消选中创建UI界面复选框,完成项目创建。

三、UI界面设置

UI界面如下:

无UI界面

四、主程序实现

4.1 widget.h头文件

声明私有变量和私有槽函数:

cpp 复制代码
private slots:
    void updateTime() {
        // 获取当前时间并格式化为字符串
        QString currentTime = QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss");
        // 将时间设置为标签的文本
        timeLabel->setText(currentTime);
    }
private:
    QStatusBar *statusBar;
    QLabel *timeLabel;

4.2 widget.cpp源文件

在构造函数中新建状态栏,并设置每1000毫秒(1秒)更新一次数据:

cpp 复制代码
//新建状态栏
statusBar=new QStatusBar(this);
this->setStatusBar(statusBar);
timeLabel=new QLabel(this);
statusBar->addPermanentWidget(timeLabel);
// 创建计时器,每秒更新一次
QTimer *timer = new QTimer(this);
connect(timer, &QTimer::timeout, this, &MainWindow::updateTime);
timer->start(1000); // 设置每1000毫秒(1秒)触发一次
// 初始化时间显示
updateTime();

五、效果演示

完整效果如下:


ok,以上便是本文的全部内容了,如果对你有所帮助,记得点个赞哟~

相关推荐
bkspiderx11 分钟前
Qt 的消息机制:事件驱动与信号槽的底层逻辑
开发语言·qt·信号槽·事件驱动·qt 的消息机制
晴天的雨.99213 分钟前
【C++算法】三数之和
开发语言·c++·算法
pippocao16 分钟前
王者荣耀日志组件BqLog 为何如此快之3——压缩日志执行路径优化
c++
传奇开心果编程20 分钟前
【Flutter入门练中学】第11课:状态管理进阶与声明式路由
android·学习·flutter·ui·ios
AC赳赳老秦22 分钟前
公开 CSV 数据集批量处理实战:用 OpenClaw 高效完成下载、清洗与标准化分析样本生成
java·开发语言·汇编·c++·python·deepseek·openclaw
j7~1 小时前
【Python】(篇七)《使用Python库》 -- 详解
开发语言·后端·python·编程学习·python标准库·python第三方库·python拓展
心中有你02141 小时前
C语言实现文件异或加密与RLE压缩算法
c语言·开发语言
凉茶钱1 小时前
【吃透C++】static、友元、内部类、匿名对象与拷贝编译器优化全解析
c++·青少年编程·visual studio
小宋10211 小时前
MCP 工具也有供应链风险:注册中心、签名校验、版本锁定与白名单
开发语言·网络·人工智能·php
无名猿1 小时前
左值引用、右值引用与万能引用:引用折叠全解
c++·现代c++·模板元编程·语法基础