PyQt5之QDateTimeEdit

QDateTimeEdit是一个允许用户编辑日期时间的控件,可以使用键盘来增加或减少日期时间值。QDateTimeEdit通过setDisplayFormat()函数来设置显示的日期时间格式。

一、QDateTimeEdit中的常用方法

方法 描述
setDisplayFormat() 设置日期格式:yyyy(代表年份,用4位数表示)、MM(代表月份,取值范围为01 ~ 12)、dd(代表日,取值范围为01 ~ 31)、HH(代表小时,取值范围为00 ~ 23)、mm(代表分钟,取值范围为00 ~ 59)、ss(代表秒,取值范围为00 ~ 59)
setMinimumDate() 设置控件的最小日期
setMaximumDate() 设置控件的最大日期
time() 返回编辑的时间
date() 返回编辑的日期

二、QDateTimeEdit中的常用信号

信号 含义
dateChanged 当日期改变时发射此信号
dateTimeChanged 当日期时间改变时发射此信号
timeChanged 当时间改变时发射此信号

三、QDateTimeEdit

  1. QDateTimeEdit的子类:

QDateEditQTimeEdit类均继承自QDateTimeEdit类,它们的许多功能特性都由QDateTimeEdit提供。

注:QDateEdit用来编辑控件的日期,仅包括年、月、日;QTimeEdit用来编辑控件的时间,仅包括小时、分钟和秒。

dateEdit = QDateEdit(self)
timeEdit = QTimeEdit(self)
dateEdit.setDisplayFormat("yyyy-MM-dd")
timeEdit.setDisplayFormat("HH:mm:ss")

  1. 初始化QDateTimeEdit类:

在默认情况下,如果QDateTimeEdit类构造时不指定日期时间,那么系统会为其设置一个和本地相同的日期时间格式,并且值为2000年1月1日0时0分0秒,也可以手动指定控件显示的日期时间。除了通过构造函数指定所显示的日期时间外,也可以根据QDateTimeEdit提供的槽函数来设置,比如setDateTime()setDate()setTime()函数。

dateTimeEdit = QDateTimeEdit(self)
dateTimeEdit2 = QDateTimeEdit(QDateTime.currentDateTime(),self)
dateEdit = QDateTimeEdit(QDate.currentDate(),self)
timeEdit = QDateTimeEdit(QTime.currentTime(),self)

  1. 设置日期时间格式:
dateTimeEdit = QDateTimeEdit(self)
dateTimeEdit2 = QDateTimeEdit(QDateTime.currentDateTime(),self)
dateEdit = QDateTimeEdit(QDate.currentDate(),self)
timeEdit = QDateTimeEdit(QTime.currentTime(),self)#设置格式
dateTimeEdit.setDisplayFormat("yyyy-MM-dd HH:mm:ss")
dateTimeEdit2.setDisplayFormat("yyyy/MM/dd HH-mm-ss")
dateEdit.setDisplayFormat("yyyy.MM.dd")
timeEdit.setDisplayFormat("HH:mm:ss")

四、QDateTimeEdit的使用

import sys,math
from PyQt5 import QtCore
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *class Win(QWidget):def __init__(self):super().__init__()self.setGeometry(300, 300,400, 380)self.setWindowTitle('QDateTimeEdit的使用')layout = QVBoxLayout()self.dateEdit = QDateTimeEdit(QDateTime.currentDateTime(),self)self.dateEdit.setDisplayFormat("yyyy-MM-dd HH:mm:ss")#设置格式self.dateEdit.setMinimumDate(QDate.currentDate().addDays(-365))#设置最小日期self.dateEdit.setMaximumDate(QDate.currentDate().addDays(365))#设置最大日期self.dateEdit.setCalendarPopup(True)#弹出日历self.dateEdit.dateChanged.connect(self.onDateChanged)self.dateEdit.dateTimeChanged.connect(self.onDateTimeChanged)self.dateEdit.timeChanged.connect(self.onTimeChanged)self.btn = QPushButton('获取日期和时间')self.btn.clicked.connect(self.onButtonClick)layout.addWidget(self.dateEdit)layout.addWidget(self.btn)self.setLayout(layout)def onDateChanged(self,date):print(date)def onDateTimeChanged(self,dateTime):print(dateTime)def onTimeChanged(self,time):print(time)def onButtonClick(self):dateTime = self.dateEdit.dateTime()maxDate = self.dateEdit.maximumDate()maxDateTime = self.dateEdit.maximumDateTime()maxTime = self.dateEdit.maximumTime()minDate = self.dateEdit.minimumDate()minDateTime = self.dateEdit.minimumDateTime()minTime = self.dateEdit.minimumTime()print('\n选择日期时间')print('dateTime=%s' % str(dateTime))print('maxDate=%s' % str(maxDate))print('maxDateTime=%s' % str(maxDateTime))print('maxTime=%s' % str(maxTime))print('minDate=%s' % str(minDate))print('minDateTime=%s' % str(maxDateTime))print('minTime=%s' % str(maxTime))if __name__ == "__main__":app = QApplication(sys.argv)form = Win()form.show()sys.exit(app.exec_())

运行效果如下:

PyQt5之QDateTimeEdit编辑日期时间相关推荐

  1. 实战PyQt5: 152-QChart图表之日期时间坐标轴

    在统计图表中,使用时间作为某一坐标轴的情况非常常见,比如,常见的一年间月度销售统计,财务统计等等.在QChart中提供了日期时间坐标轴QDateTimeAxis类可以方便地将日期和时间添加到图表的坐标 ...

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

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

  3. mysql根据当前时间删除_从日期时间早于另一项日期时间的Mysql表中删除

    我有一些困难,使我的MySQL查询正确.当前状态如下: 我有一个包含Todo的表,其中datetime字段已更改为(在插入/更新时设置为当前datetime) 如果有20个以上的项目的"是否 ...

  4. Php中如何记录本报时间,详细讲解PHP的日期时间函数date()

    详细讲解PHP的日期时间函数date() 作者:wang 日期:2009-06-06 字体大小: 小 中 大 1,年-月-日 echo date('Y-m-j'); 2007-02-6 echo da ...

  5. 将UTC日期时间转换为本地日期时间

    本文翻译自:Convert UTC date time to local date time From the server I get a datetime variable in this for ...

  6. PHP获取当前时间、时间戳的各种格式写法汇总[日期时间]

    PHP获取当前时间.时间戳的各种格式写法汇总[日期时间] 原文:PHP获取当前时间.时间戳的各种格式写法汇总[日期时间] 今天写下php中,如何通过各种方法 获取当前系统时间.时间戳,并备注各种格式的 ...

  7. WPF-数据绑定:日期时间格式

    WPF-数据绑定:日期时间格式 原文:WPF-数据绑定:日期时间格式 WPF-数据绑定:日期时间格式绑定后自定义格式的例子. 我刚才遇到的问题是绑定完之后,星期始终显示为英文.需要一个属性Conver ...

  8. python什么时候诞生的_关于RFC 3339日期时间:在Python中产生timestamp

    我正在尝试在python中生成一个RFC3339 UTC时间戳.到目前为止,我已经能够做到以下几点: >>> d = datetime.datetime.now() >> ...

  9. executequery方法_【接口测试】soapui中数字、字符串、日期时间、数据库连接参数化的设置方法...

    先回顾下前几篇soapui工具操作文章: 在soapui里面使用groovy脚本生成测试报告的方法 在soapui里面用groovy传递cookie身份信息的方法 soapui中进行接口响应数据的关联 ...

最新文章

  1. 反射 字段_详解面试中常考的 Java 反射机制
  2. Linux帮助使用方法详解
  3. 最好用的嵌入式网络C库、Lua库
  4. 液晶显示原理与ILI9341的使用
  5. Scala 学习笔记(1)
  6. python判断数据类型type_Python 判断数据类型有type和isinstance
  7. mybatis的快速入门
  8. [置顶] 软件设计之道_读书纪要.doc
  9. 引导类、扩展类、系统类加载器的使用及演示
  10. 图像局部显著性—点特征(SiftGPU)
  11. 分享干货:靠刷算法题,真的可以刷进大厂吗?
  12. Mybatis 在 IDEA 中使用 generator 逆向工程生成 pojo,mapper
  13. 【LeetCode】3月17日打卡-Day2
  14. HDU 6178 Monkeys
  15. Linux内核【链表】整理笔记(1)
  16. 开启UDK(Unreal Development Kit)之旅
  17. movs 数据传送指令_深入理解计算机系统(3.3)---数据传送(或者说复制)指令详解...
  18. 跑马灯广告语的实现过程,并且自定义marquee,解决焦点抢占问题.
  19. Elasticsearch教程(31) es mapping参数doc_values enabled ignore_above norms store详解
  20. 中国最年轻的亿万富翁_我和一个亿万富翁一起吃饭。 他给我的建议是无价的。

热门文章

  1. 鹏业云计价i20(四川)CJZ阅读模式功能
  2. 2884: 水果分级
  3. python3 打包后执行报错failed to execute script ***
  4. MySQL数据库30条规范解读
  5. 机器视觉VS计算机视觉
  6. 双非一本考研国防科技大学计算机,不歧视“双非”,保护一志愿!40所“良心”大学值得推荐!...
  7. 咖说 | 「延展与重构」数字艺术的新可能
  8. 关于WiFi和信号图标出现感叹号消除办法
  9. <计算机视觉 六> 深度学习目标检测模型的评估标准
  10. 罗德里格斯公式 理解、推导