Roson讲Qt #9 QDateTimeEdit(日期时间编辑)

2023-11-01 19:31

本文主要是介绍Roson讲Qt #9 QDateTimeEdit(日期时间编辑),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.什么是QDateTimeEdit

    QDateTimeEdit类提供了一个用于编辑日期和时间的小部件。

    QDateTimeEdit允许用户使用键盘或方向键来编辑日期和时间值,以增加和减少日期和时间值。箭头键可用于在QDateTimeEdit框中从一个区域移动到另一个区域。日期和时间按照格式设置,需使用setDisplayFormat()。

    QDateTimeEdit *dateEdit = new QDateTimeEdit(QDate::currentDate());dateEdit->setMinimumDate(QDate::currentDate().addDays(-365));dateEdit->setMaximumDate(QDate::currentDate().addDays(365));dateEdit->setDisplayFormat("yyyy.MM.dd");

    在这里,我们创建了一个新的QDateTimeEdit对象,初始化为今天的日期,并将有效日期范围限制为今天±365天。我们已经设定了月,日,年的顺序。

    QDateTimeEdit的最小值是1752年9月14日。您可以通过调用setMinimumDate()来更改这一点,考虑到QDate的最小值是4713BC 2 January。

    其他有用的函数还有setMaximumDate()、setMinimumTime()和setMaximumTime()。

2.QDateTimeEdit使用

2.1 设置最大日期和最小日期

2.1.1 方法1

	ui.dateTimeEdit->setMinimumDate(QDate::currentDate().addDays(-365));ui.dateTimeEdit->setMaximumDate(QDate::currentDate().addDays(366));

这种写法不太好理解, 下面解释一下:

QDate::currentDate()表示当前日期,我写这篇博客的日期是2021.8.22,QDate::currentDate().addDays(-365)的意思是在当前日期上往前推365天,也就是上图中显示的2020.8.22,这个控件默认显示的初始日期就是最小日期。上图中这个日期已经无法减小了,点右边的向下箭头已经无法改小日期,只能增大。

2.1.2 方法2

	ui.dateTimeEdit->setMinimumDate(QDate(2021,05,20));ui.dateTimeEdit->setMaximumDate(QDate(2021,12,20));ui.dateTimeEdit->setDisplayFormat("yyyy.MM.dd");

这种用法就比较直观,程序设置的多大就是多大。

 

2.2 指定日历编辑器

	//设置calendarPopup属性为true-必须要这一行,而且要放在前面ui.dateTimeEdit->setCalendarPopup(true);//指定一个部件来作为弹出的日历编辑器,可以是QCalendarWidget或者QCalendarWidget的子类ui.dateTimeEdit->setCalendarWidget(new QCalendarWidget());

 

2.3 设置日期和时间的格式

可以用如下表达式来表示日期:

 

可以用如下表达式来表示时间:

 

更详细的资料需要查阅QDateTime。

下面给出几个示例:

ui.dateTimeEdit->setDisplayFormat("yyyy.MM.dd HH:MM:ss");

ui.dateTimeEdit->setDisplayFormat("yyyy/MM/dd HH:MM:ss");

 

 

这篇关于Roson讲Qt #9 QDateTimeEdit(日期时间编辑)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/325233

相关文章

Python标准库datetime模块日期和时间数据类型解读

《Python标准库datetime模块日期和时间数据类型解读》文章介绍Python中datetime模块的date、time、datetime类,用于处理日期、时间及日期时间结合体,通过属性获取时间... 目录Datetime常用类日期date类型使用时间 time 类型使用日期和时间的结合体–日期时间(

Java获取当前时间String类型和Date类型方式

《Java获取当前时间String类型和Date类型方式》:本文主要介绍Java获取当前时间String类型和Date类型方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录Java获取当前时间String和Date类型String类型和Date类型输出结果总结Java获取

Python实现批量提取BLF文件时间戳

《Python实现批量提取BLF文件时间戳》BLF(BinaryLoggingFormat)作为Vector公司推出的CAN总线数据记录格式,被广泛用于存储车辆通信数据,本文将使用Python轻松提取... 目录一、为什么需要批量处理 BLF 文件二、核心代码解析:从文件遍历到数据导出1. 环境准备与依赖库

Qt使用QSqlDatabase连接MySQL实现增删改查功能

《Qt使用QSqlDatabase连接MySQL实现增删改查功能》这篇文章主要为大家详细介绍了Qt如何使用QSqlDatabase连接MySQL实现增删改查功能,文中的示例代码讲解详细,感兴趣的小伙伴... 目录一、创建数据表二、连接mysql数据库三、封装成一个完整的轻量级 ORM 风格类3.1 表结构

go中的时间处理过程

《go中的时间处理过程》:本文主要介绍go中的时间处理过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 获取当前时间2 获取当前时间戳3 获取当前时间的字符串格式4 相互转化4.1 时间戳转时间字符串 (int64 > string)4.2 时间字符串转时间

Qt QCustomPlot库简介(最新推荐)

《QtQCustomPlot库简介(最新推荐)》QCustomPlot是一款基于Qt的高性能C++绘图库,专为二维数据可视化设计,它具有轻量级、实时处理百万级数据和多图层支持等特点,适用于科学计算、... 目录核心特性概览核心组件解析1.绘图核心 (QCustomPlot类)2.数据容器 (QCPDataC

Golang如何对cron进行二次封装实现指定时间执行定时任务

《Golang如何对cron进行二次封装实现指定时间执行定时任务》:本文主要介绍Golang如何对cron进行二次封装实现指定时间执行定时任务问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录背景cron库下载代码示例【1】结构体定义【2】定时任务开启【3】使用示例【4】控制台输出总结背景

Qt如何实现文本编辑器光标高亮技术

《Qt如何实现文本编辑器光标高亮技术》这篇文章主要为大家详细介绍了Qt如何实现文本编辑器光标高亮技术,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以了解下... 目录实现代码函数作用概述代码详解 + 注释使用 QTextEdit 的高亮技术(重点)总结用到的关键技术点应用场景举例示例优化建议

Qt 设置软件版本信息的实现

《Qt设置软件版本信息的实现》本文介绍了Qt项目中设置版本信息的三种常用方法,包括.pro文件和version.rc配置、CMakeLists.txt与version.h.in结合,具有一定的参考... 目录在运行程序期间设置版本信息可以参考VS在 QT 中设置软件版本信息的几种方法方法一:通过 .pro

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五