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,以上便是本文的全部内容了,如果对你有所帮助,记得点个赞哟~

相关推荐
历程里程碑1 小时前
LeetCode热题11:盛水容器双指针妙解
c语言·数据结构·c++·经验分享·算法·leetcode·职场和发展
郝学胜-神的一滴1 小时前
使用OpenGL绘制卡通效果的圣诞树
开发语言·c++·程序人生·游戏·图形渲染
想回家的一天6 小时前
ECONNREFUSED ::1:8000 前端代理问题
开发语言
cike_y6 小时前
Mybatis之解析配置优化
java·开发语言·tomcat·mybatis·安全开发
Jay_Franklin7 小时前
SRIM通过python计算dap
开发语言·python
Slow菜鸟7 小时前
Java基础架构设计(三)| 通用响应与异常处理(分布式应用通用方案)
java·开发语言
消失的旧时光-19438 小时前
401 自动刷新 Token 的完整架构设计(Dio 实战版)
开发语言·前端·javascript
wadesir8 小时前
Rust中的条件变量详解(使用Condvar的wait方法实现线程同步)
开发语言·算法·rust
tap.AI8 小时前
RAG系列(二)数据准备与向量索引
开发语言·人工智能
阿蒙Amon8 小时前
C#每日面试题-重写和重载的区别
开发语言·c#