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

相关文章

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 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

Java日期类详解(最新推荐)

《Java日期类详解(最新推荐)》早期版本主要使用java.util.Date、java.util.Calendar等类,Java8及以后引入了新的日期和时间API(JSR310),包含在ja... 目录旧的日期时间API新的日期时间 API(Java 8+)获取时间戳时间计算与其他日期时间类型的转换Dur

VS配置好Qt环境之后但无法打开ui界面的问题解决

《VS配置好Qt环境之后但无法打开ui界面的问题解决》本文主要介绍了VS配置好Qt环境之后但无法打开ui界面的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目UKeLvb录找到Qt安装目录中designer.UKeLvBexe的路径找到vs中的解决方案资源

利用Python实现时间序列动量策略

《利用Python实现时间序列动量策略》时间序列动量策略作为量化交易领域中最为持久且被深入研究的策略类型之一,其核心理念相对简明:对于显示上升趋势的资产建立多头头寸,对于呈现下降趋势的资产建立空头头寸... 目录引言传统策略面临的风险管理挑战波动率调整机制:实现风险标准化策略实施的技术细节波动率调整的战略价