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

相关推荐
SLD_Allen1 小时前
Go语言runtime全景
开发语言·javascript·golang
Elastic 中国社区官方博客1 小时前
OpenTelemetry Java 扩展:无需分叉 agent 即可自定义追踪
java·大数据·运维·开发语言·数据库·人工智能·elasticsearch
不灭的黄金瞳1231 小时前
C语言手写顺序表
c语言·开发语言·数据结构
阿无,1 小时前
Java多线程面试题之AQS
java·开发语言
豆沙沙包?1 小时前
C++~~~set容器、map容器(p57-P69)
开发语言·c++
qeen872 小时前
【数据结构】哈希表的C++实现与封装
数据结构·c++·散列表·哈希表
脉动数据行情12 小时前
Java SpringBoot 对接知名台股 TWSE|批量采集上市股票行情实践
java·开发语言·spring boot
IKUN家族3 小时前
SpringBoot日志
java·开发语言
迷迭香yy3 小时前
Python构建转融券多空识别系统从接口到因子的全流程 IG50免费开源股票数据API接口
开发语言·python·开源