Qt的时间控件类QDateTimeEdit,QTimeEdit,QDateEdit,QCalendarWidget

  • QDateTimeEdit
    • 属性
      • datetime:
      • date:
      • time:
      • maximumDateTime、minimumDateTime:
      • maximumDate、minimumDate:
      • maximumTime、minimumTime:
      • currentSection:
      • currentSectionIndex:
      • calendarPopup:
      • displayFormat:
    • 用于日期显示的格式符及其意义
    • 时间日期转换为字符串
    • 字符串转换为日期时间
  • QTimeEdit
    • 属性:time
  • QDateEdit
    • 属性:date
  • QCalendarWidget日历组件
    • 属性:
      • selectedDate : QDate
      • maximumDate、minimumDate : QDate
      • firstDayOfWeek : Qt::DayOfWeek
      • gridVisible : bool
      • selectionMode : SelectionMode
      • verticalHeaderFormat : VerticalHeaderFormat
      • horizontalHeaderFormat :HorizontalHeaderFormat
      • navigationBarVisible : bool
      • dateEditAcceptDelay : int
      • dateEditEnabled : bool

Qt中有专门用于日期、时间编辑和显示的界面组件,介绍如下。
QTimeEdit: 编辑和显示时间的组件。
QDateEdit:编辑和显示日期的组件。
QDateTimeEdit:编辑和显示日期时间的组件。
QCalendarWidget:一个用日历形式选择日期的组件。

QDateTimeEdit

QDateEdit和QTimeEdit都从QDateTimeEdit继承而来,实现针对日期或时间的特定显示功能。实际上,QDateEdit和QTimeEdit的显示功能都可以通过QDateTimeEdit实现,只需设置好属性即可。

属性


Properties:

calendarPopup : bool
currentSection : Section
currentSectionIndex : int
date : QDate
dateTime : QDateTime
displayFormat : QString
displayedSections : const Sections
maximumDate : QDate
maximumDateTime : QDateTime
maximumTime : QTime
minimumDate : QDate
minimumDateTime : QDateTime
minimumTime : QTime
sectionCount : const int
time : QTime
timeSpec : Qt::TimeSpec

datetime:

日期时间。

date:

日期,设置datetime时会自动改变date,同样,设置date时,也会自动改变datetime里的日期。

time:

时间,设置datetime时会自动改变time,同样,设置time时,也会自动改变datetime里的时间。

maximumDateTime、minimumDateTime:

最大、最小日期时间。

maximumDate、minimumDate:

最大、最小日期。

maximumTime、minimumTime:

最大、最小时间。

currentSection:

当前输入光标所在的时间日期数据段,是枚举类型QDateTimeEdit::Section。QDateTimeEdit显示日期时间数据时分为多个段,单击编辑框右侧的上下按钮可修改当前段的值。如输入光标在YearSection段,就修改“年”的值。

currentSectionIndex:

用序号表示的输入光标所在的段。

calendarPopup:

是否允许弹出一个日历选择框。当取值为true时,右侧的输入按钮变成与QComboBox类似的下拉按钮,单击按钮时出现一个日历选择框,用于在日历上选择日期。对于QTimeEdit,此属性无效。

displayFormat:

显示格式,日期时间数据的显示格式,例如设置为“yyyy-MM-dd HH:mm:ss”,一个日期时间数据就显示为“2016-11-02 08:23:46”。

用于日期显示的格式符及其意义

字符 意义
d 天,不补零显示,1-31
dd 天,补零显示,01-31
M 月,不补零显示,1-12
MM 月,补零显示,01-12
yy 年,两位显示,00-99
yyyy 年,4位数字显示,如2016
h 小时,不补零,0-23或1-12(如果显示AM/PM)
hh 小时,补零2位显示,00-23或01-12(如果显示AM/PM)
H 小时,不补零,0-23(即使显示AM/PM)
HH 小时,补零显示,00-23(即使显示AM/PM)
m 分钟,不补零,0-59
mm 分钟,补零显示,00-59
z 毫秒,不补零,0-999
zzz 毫秒,补零3位显示,000-999
AP或A 使用AM/pm显示
ap或a 使用am/pm显示

时间日期转换为字符串

使用了QDateTime的toString()函数,分别用不同的格式显示时间、日期、日期时间。

//QString QDateTime::toString(const QString &format) const
ui->editTime->setText(curDateTime.toString("hh:mm:ss"));
ui->editDate->setText(curDateTime.toString("yyyy-MM-dd"));
ui->editDateTime->setText(curDateTime.toString("yyyy-MM-dd hh:mm:ss"));

字符串转换为日期时间

同样的,也可以将字符串转换为QTime、QDate或QDateTime类型,使用静态函数QDateTime:: fromString(),其函数原型为:

QDateTime QDateTime::fromString(const QString &string, const QString &format
datetime=QDateTime::fromString(str,"yyyy-MM-dd hh:mm:ss");

QTimeEdit

QDateEdit和QTimeEdit都从QDateTimeEdit继承而来,实现针对日期或时间的特定显示功能。

属性:time

QDateEdit

QDateEdit和QTimeEdit都从QDateTimeEdit继承而来,实现针对日期或时间的特定显示功能。

属性:date

QCalendarWidget日历组件

属性:


Properties:

dateEditAcceptDelay : int
dateEditEnabled : bool
firstDayOfWeek : Qt::DayOfWeek
gridVisible : bool
horizontalHeaderFormat : HorizontalHeaderFormat
maximumDate : QDate
minimumDate : QDate
navigationBarVisible : bool
selectedDate : QDate
selectionMode : SelectionMode
verticalHeaderFormat : VerticalHeaderFormat

selectedDate : QDate

当前日历的日期。

maximumDate、minimumDate : QDate

最大日期和最小日期。

firstDayOfWeek : Qt::DayOfWeek

设置日期周的开始第一天是周几。

gridVisible : bool

是否有网格线。

selectionMode : SelectionMode

此属性保存用户可以在日历中进行的选择类型 当此属性设置为 SingleSelection 时,用户可以使用鼠标或键盘在允许的最小和最大日期范围内选择一个日期。当该属性设置为 NoSelection 时,用户将无法选择日期,但仍可以通过编程方式选择日期。请注意,该属性设置为 NoSelection 时选择的日期仍将是日历的选定日期。默认值为 SingleSelection。

verticalHeaderFormat : VerticalHeaderFormat

设置水平头的显示的格式。

horizontalHeaderFormat :HorizontalHeaderFormat

设置显示一年的第几周。

navigationBarVisible : bool

是否显示月份和年份。

dateEditAcceptDelay : int

dateEditEnabled : bool

Qt的时间控件类QDateTimeEdit,QTimeEdit,QDateEdit,QCalendarWidget相关推荐

  1. python日历gui_python GUI库图形界面开发之PyQt5日期时间控件QDateTimeEdit详细使用方法与实例...

    PyQt5日期时间控件QDateTimeEdit介绍 QDateTimeEdit是一个允许用户编辑日期时间的控件,可以使用键盘上的上下键头按钮来增加或减少日期的时间值,QDateTimeEdit通过s ...

  2. Qt 设计师-Qt Designer基础控件介绍

    Layouts: Vertical Layout:垂直布局 Horizontal Layout:水平布局 Gird Layout:栅格布局 FormLayout:表单布局 关于布局有很多博客写的很好就 ...

  3. qml 时间控件_Qt编写自定义控件54-时钟仪表盘

    一.前言 这个控件没有太多的应用场景,主要就是练手,论美观的话比不上之前发过的一个图片时钟控件,所以此控件也是作为一个基础的绘制demo出现在Qt源码中,我们可以在Qt的安装目录下找到一个时钟控件的绘 ...

  4. QT中树控件QTreeView开发实例

    转自:http://mobile.51cto.com/symbian-268700.htm 本文讲解了QT中树控件QTreeView开发实例,对于QTreeView没有过多的讲解,那么不说废话了,看代 ...

  5. QT旋转按钮控件的实现

    目录 一.实现需求:鼠标hover时旋转 二.实现方式:计时器做动画 三.代码实现 QT旋转按钮控件的实现 一.实现需求:鼠标hover时旋转 需求是:实现类似于WINDOWS下,某些软件窗口关闭按钮 ...

  6. qt 背景和控件布局_Qt编写自定义控件26-平铺背景控件

    一.前言 平铺背景控件,主要的应用场景是作为画布出现,黑白相间的背景图,然后上面可以放置图片图形等,使得看起来更美观,比如PS软件新建图层以后的背景,FireWorks软件新建画布以后的透明背景,IC ...

  7. Qt QTableWidget表格控件的用法(非常详细)

    Qt QTableWidget表格控件的用法(非常详细) QTableWidget 是 Qt 提供的一种表格控件(如图 1 所示),类似于我们经常使用的 Excel 表格,可以将数据以表格的方式展示给 ...

  8. QT自定义Widget控件及其使用

    今天来给大家分享一下QT自定义widget控件及其使用,当ui设计器提供的界面不满足实际需求时,可以从QWidget继承自定义的界面组件.有两种方法一种是提升法,另一种是ui设计器自定义界面组件wid ...

  9. My97DatePicker时间控件使用

    My97DatePicker时间控件使用  My97DatePicker是一款非常灵活好用的日期控件.使用非常简单.  1.下载My97DatePicker组件包  2.在页面中引入该组件js文件:  ...

最新文章

  1. C++内存分配和管理
  2. 几句话说明 .NET MVC中ViewData, ViewBag和TempData的区别
  3. 在ROS中开始自主机器人仿真 - 2 让turtlebot跑起来
  4. python查看函数定义_从函数内函数定义看python的函数实现
  5. yum 下载软件的存放位置
  6. Opera Mobile Classic Emulator
  7. java插件化_从零开始实现一个插件化框架(一)
  8. verilog实现多周期处理器之——(五)移动操作(通用数据传送)指令的实现
  9. matlab层次分析法代码_基于主成分分析法和层次分析法的工程项目经理胜任力评价研究...
  10. 元素的水平垂直居中解决方法
  11. FluorineFx:远程共享对象(Remote SharedObjects)
  12. 一个简单实用的boost升压电路
  13. 总结淘宝客应该注意的佣金陷阱
  14. 每天吃一碗,肾不好都不行!
  15. OpenWrt 无线桥接
  16. vscode ssh连接服务器报错:过程试图写入的管道不存在
  17. 微服务体系中的分层设计和领域划分!
  18. 运动步数已更新,方法教程来了!
  19. html5+css3学习笔记(一)
  20. Google Guava 的 5 个鲜为人知的特性

热门文章

  1. scheduleAtFixedRate和scheduleWithFixedDelay方法
  2. mysql中prepare的设计_prepare的设计与实现
  3. kaggle 泰坦尼克号生存预测——六种算法模型实现与比较
  4. pthread使用方法
  5. 卷起来了,国产显卡再添新成员,主打性价比
  6. 实体类用int还是Integer
  7. Carsim2018入门第一步—新建数据库datebase
  8. 前端知识小报第二十期
  9. python将文件上传到svn_Python 一键commit文件、目录到SVN服务器
  10. 2021-技能大赛-信息安全管理与评估-DCN 设备总结 (中)-任务二-设备安全配置篇(1)