PyQt5之QDateTimeEdit编辑日期时间
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
- QDateTimeEdit的子类:
QDateEdit
和QTimeEdit
类均继承自QDateTimeEdit类,它们的许多功能特性都由QDateTimeEdit提供。
注:QDateEdit
用来编辑控件的日期,仅包括年、月、日;QTimeEdit
用来编辑控件的时间,仅包括小时、分钟和秒。
dateEdit = QDateEdit(self)
timeEdit = QTimeEdit(self)
dateEdit.setDisplayFormat("yyyy-MM-dd")
timeEdit.setDisplayFormat("HH:mm:ss")
- 初始化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)
- 设置日期时间格式:
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编辑日期时间相关推荐
- 实战PyQt5: 152-QChart图表之日期时间坐标轴
在统计图表中,使用时间作为某一坐标轴的情况非常常见,比如,常见的一年间月度销售统计,财务统计等等.在QChart中提供了日期时间坐标轴QDateTimeAxis类可以方便地将日期和时间添加到图表的坐标 ...
- python日历gui_python GUI库图形界面开发之PyQt5日期时间控件QDateTimeEdit详细使用方法与实例...
PyQt5日期时间控件QDateTimeEdit介绍 QDateTimeEdit是一个允许用户编辑日期时间的控件,可以使用键盘上的上下键头按钮来增加或减少日期的时间值,QDateTimeEdit通过s ...
- mysql根据当前时间删除_从日期时间早于另一项日期时间的Mysql表中删除
我有一些困难,使我的MySQL查询正确.当前状态如下: 我有一个包含Todo的表,其中datetime字段已更改为(在插入/更新时设置为当前datetime) 如果有20个以上的项目的"是否 ...
- Php中如何记录本报时间,详细讲解PHP的日期时间函数date()
详细讲解PHP的日期时间函数date() 作者:wang 日期:2009-06-06 字体大小: 小 中 大 1,年-月-日 echo date('Y-m-j'); 2007-02-6 echo da ...
- 将UTC日期时间转换为本地日期时间
本文翻译自:Convert UTC date time to local date time From the server I get a datetime variable in this for ...
- PHP获取当前时间、时间戳的各种格式写法汇总[日期时间]
PHP获取当前时间.时间戳的各种格式写法汇总[日期时间] 原文:PHP获取当前时间.时间戳的各种格式写法汇总[日期时间] 今天写下php中,如何通过各种方法 获取当前系统时间.时间戳,并备注各种格式的 ...
- WPF-数据绑定:日期时间格式
WPF-数据绑定:日期时间格式 原文:WPF-数据绑定:日期时间格式 WPF-数据绑定:日期时间格式绑定后自定义格式的例子. 我刚才遇到的问题是绑定完之后,星期始终显示为英文.需要一个属性Conver ...
- python什么时候诞生的_关于RFC 3339日期时间:在Python中产生timestamp
我正在尝试在python中生成一个RFC3339 UTC时间戳.到目前为止,我已经能够做到以下几点: >>> d = datetime.datetime.now() >> ...
- executequery方法_【接口测试】soapui中数字、字符串、日期时间、数据库连接参数化的设置方法...
先回顾下前几篇soapui工具操作文章: 在soapui里面使用groovy脚本生成测试报告的方法 在soapui里面用groovy传递cookie身份信息的方法 soapui中进行接口响应数据的关联 ...
最新文章
- 反射 字段_详解面试中常考的 Java 反射机制
- Linux帮助使用方法详解
- 最好用的嵌入式网络C库、Lua库
- 液晶显示原理与ILI9341的使用
- Scala 学习笔记(1)
- python判断数据类型type_Python 判断数据类型有type和isinstance
- mybatis的快速入门
- [置顶] 软件设计之道_读书纪要.doc
- 引导类、扩展类、系统类加载器的使用及演示
- 图像局部显著性—点特征(SiftGPU)
- 分享干货:靠刷算法题,真的可以刷进大厂吗?
- Mybatis 在 IDEA 中使用 generator 逆向工程生成 pojo,mapper
- 【LeetCode】3月17日打卡-Day2
- HDU 6178 Monkeys
- Linux内核【链表】整理笔记(1)
- 开启UDK(Unreal Development Kit)之旅
- movs 数据传送指令_深入理解计算机系统(3.3)---数据传送(或者说复制)指令详解...
- 跑马灯广告语的实现过程,并且自定义marquee,解决焦点抢占问题.
- Elasticsearch教程(31) es mapping参数doc_values enabled ignore_above norms store详解
- 中国最年轻的亿万富翁_我和一个亿万富翁一起吃饭。 他给我的建议是无价的。
热门文章
- 鹏业云计价i20(四川)CJZ阅读模式功能
- 2884: 水果分级
- python3 打包后执行报错failed to execute script ***
- MySQL数据库30条规范解读
- 机器视觉VS计算机视觉
- 双非一本考研国防科技大学计算机,不歧视“双非”,保护一志愿!40所“良心”大学值得推荐!...
- 咖说 | 「延展与重构」数字艺术的新可能
- 关于WiFi和信号图标出现感叹号消除办法
- <计算机视觉 六> 深度学习目标检测模型的评估标准
- 罗德里格斯公式 理解、推导