版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第QT获取显示当前时间和日期的方法(用QTime,QDate和QDateTime)目录获取当前时间和日期QTime类QDate类QDateTime类定时更新显示时间和日期补充:QT中分别获取当前时间的年、月、日总结
获取当前时间和日期
QT中获取时间和日期的主要是QTime、QDate和QDateTime这三个类。
QTime类
通过QTime类中提供的时间相关的方法,可以获取到当前系统时间(时、分、秒、毫秒),需要注意的是,计时的准确性由底层操作系统决定,并不是所有的操作系统都能精确到毫秒级别。
通过调用QTime类中的currentTime()方法可以获取到当前系统时间:
QTimetime=QTime::currentTime();
qDebug()time;
输出结果:
QTime("12:01:13.427")
如果我们需要获取字符串形式的时间,可以使用toString()这个方法:
QTimetime=QTime::currentTime();
qDebug()time.toString("hh:mm:ss");
输出结果:
"12:01:13"
字符串形式的时间输出格式由toString()方法中的format参数列表决定,可用的参数列表如下:
如果我们在显示时间的同时还需要显示上午或下午,可以在格式列表添加添加AP、A、ap、a等选项:
QTimetime=QTime::currentTime();
qDebug()time.toString("hh:mm:ssa");
输出结果:
"02:29:31下午"
当你电脑的系统语言使用中文时,不管格式列表中填AP、A、ap、a这四个选项里的哪一个,都只会显示上午或下午;只有当电脑系统语言使用英文时才会区分大小写,例如选择AP/A,显示AM/PM,选择ap/a,显示am/pm。
hh字段的显示格式受AP/A或ap/a影响,如果格式列表中使用了AP/A或ap/a选项区分上下午,则hh字段采用12小时制格式显示;否则使用24小时制格式显示:
QTimetime=QTime::currentTime();
qDebug()time.toString("hh:mm:ssa");
qDebug()time.toString("hh:mm:ss");
输出结果:
"02:50:38下午"
"14:50:38"
HH字段的显示格式则不受AP/A或ap/a影响,不管格式列表中是否使用AP/A或ap/a选项区分上下午,HH字段均采用24小时制格式显示:
QTimetime=QTime::currentTime();
qDebug()time.toString("HH:mm:ssa");
qDebug()time.toString("HH:mm:ss");
输出结果:
"14:52:03下午"
"14:52:03"
在格式列表中添加t选项可以用来获取时区信息:
QTimetime=QTime::currentTime();
qDebug()time.toString("hh:mm:sst");
输出结果:
"14:59:02中国标准时间"
修改时区后输出结果:
"14:00:45新西伯利亚标准时间"
QDate类
通过调用QDate类中的currentDate()方法可以获取到当前系统日期:
QDatedate=QDate::currentDate();
qDebug()date;
qDebug()date.toString("yyyy-MM-dd");
输出结果:
QDate("2025-04-29")
"2025-04-29"
QDate类中对日期的操作与QTime类中对时间的操作基本一样,需要字符串格式的日期时,使用toString()方法即可,QDate类中对日期操作常用格式如下:
需要显示星期时,使用ddd或dddd选项:
QDatedate=QDate::currentDate();
qDebug()date;
qDebug()date.toString("yyyy-MM-ddddd");
qDebug()date.toString("yyyy-MM-dddddd");
输出结果:
"2025-04-29周五"
"2025-04-29星期五"
QDateTime类
QDateTime类是QDate和QTime的组合,提供一系列时间和日期相关的函数。
通过调用QDateTime类中的currentDateTime()方法可以获取到当前系统时间和日期:
QDateTimedateTime;
dateTime=QDateTime::currentDateTime();
qDebug()dateTime;
qDebug()dateTime.toString("yyyy-MM-ddhh:mm:ssddd");
输出结果:
QDateTime(2025-04-2915:22:23.615中国标准时间Qt::TimeSpec(LocalTime))
"2025-04-2915:22:23周五"
使用toString()方法将时间和日期转换成字符串形式时,格式与QTime、QDate中的格式一样。
定时更新显示时间和日期
创建一个定时器,每秒获取一次系统时间和日期,转换成字符串形式后再通过Label空间显示即可完整代码如下:
main.cpp
#include"dateTime.h"
#includeQApplication
intmain(intargc,char*argv[])
QApplicationa(argc,argv);
DateTimew;
w.show();
returna.exec();
dateTime.h
#ifndefWIDGET_H
#defineWIDGET_H
#includeQWidget
#includeQDateTime
#includeQDebug
#includeQTimer
#includeQLabel
#includeQVBoxLayout
#includeQApplication
classDateTime:publicQWidget
Q_OBJECT
public:
DateTime(QWidget*parent=nullptr);
~DateTime();
voidtimeUpdate(void);
private:
QDateTimedateTime;
QTimer*timer;
QLabel*label;
#endif
dateTime.cpp
#include"dateTime.h"
DateTime::DateTime(QWidget*parent)
:QWidget(parent)
//设置窗口标题和窗口大小
this-setWindowTitle("时间更新显示例程");
this-resize(500,100);
//创建label对象显示时间和日期
label=newQLabel(this);
QVBoxLayout*layout=newQVBoxLayout(this);
layout-addWidget(label);
this-setLayout(layout);
//初始化时间和日期显示
dateTime=QDateTime::currentDateTime();
this-label-setText(dateTime.toString("yyyy-MM-ddhh:mm:ssddd"));
//创建定时器定时更新时间和日期
timer=newQTimer(this);
connect(timer,QTimer::timeout,this,DateTime::timeUpdate);
timer-start(10
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 静脉曲张的护理评估与计划
- 老年人起居护理中的法律保障
- 金融服务承诺书样本(5篇)
- 2026年手术机器人操作工程师与医护人员健康管理体系构建与实践
- 手术病人术后护理创新
- 手工技艺延续承诺函(7篇)
- 叉车安全管理
- 财务报告审查请求函7篇
- 老年人不同疾病起居护理要点
- 6 学当交通安全员教学设计小学综合实践活动第5册人教版
- DBJ-T 15-94-2013静压预制混凝土桩基础技术规程(广东省标准)
- 医院电梯维保服务投标方案(图文版)(技术标)
- GB/T 1231-2024钢结构用高强度大六角头螺栓连接副
- 高中英语阅读教学问题链设计
- 心脏大血管护理查房课件
- 2023年江苏南京市特种设备安全监督检验研究院招考聘用高层次人才笔试历年高频考点试题含答案带详解
- 巴林特工作小组培训
- (完整版)船舶涂装
- 安徽绿沃循环能源科技有限公司12000t-a锂离子电池高值资源化回收利用项目(重新报批)环境影响报告书
- 幼儿园施工单位竣工验收自评报告
- 城市社会地理学16城市社会学研究方法
评论
0/150
提交评论