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

相关推荐
自然数e12 小时前
c++多线程【多线程常见使用以及几个多线程数据结构实现】
数据结构·c++·算法·多线程
月明长歌12 小时前
Java多线程线程池ThreadPoolExecutor理解总结:6 个核心参数 + 4 种拒绝策略(附完整示例)
java·开发语言
学编程的小鬼12 小时前
JVM 常见的问题
开发语言·jvm
故事不长丨12 小时前
C#File文件操作全解析:从基础用法到异常处理
服务器·开发语言·visualstudio·c#·文件操作·io流·file
lowhot12 小时前
C语言UI框架
c语言·开发语言·笔记·ui
gihigo199812 小时前
使用MATLAB绘制3D心形图和玫瑰花图案
开发语言·matlab·3d
柠檬叶子C12 小时前
【Python】解决 No module named ‘imp‘ 问题 | Python3 中废弃的 imp 模块
开发语言·python
源代码•宸12 小时前
Golang基础语法(go语言结构体、go语言数组与切片、go语言条件句、go语言循环)
开发语言·经验分享·后端·算法·golang·go
我想吃烤肉肉12 小时前
wait_until=“domcontentloaded“ 解释
开发语言·前端·javascript·爬虫·python
fy zs13 小时前
网络基础概念
linux·网络·c++