日期与时间控件QDate, QTime, QDateTime
继承于 QAbstractSpinBox
日期格式符:
d 没有前导零的数字的日期(1到31)
ddd 缩写的本地化日期名称(例如'Mon'到'Sun'
dddd 完整本地化的日期名称(例如“星期一”到“星期日”)
M 没有前导零的数字的月份(1-12)
MM 月份为前导零的数字(01-12)
MMM 缩写的本地化月份名称(例如'Jan'到'Dec')
MMMM 完整的本地化月份名称(例如“1月”到“12月”)
yy 年份为两位数字(00-99)
yyyy 年份为四位数字
时间格式符:
h 没有前导零的小时(如果显示AM / PM,则为0到23或1到12)
hh 前导零的小时(如果AM / PM显示,则为00到23或01到12)
H 没有前导零的小时(0到23,即使有AM / PM显示)
HH 前导零的小时(00到23,即使有AM / PM显示)
m 没有前导零的分钟(0到59)
mm 前导零(00到59)的分钟
s 整个秒没有前导零(0到59)
ss 带有前导零(00到59)
z 第二个小数部分, 没有尾随零的毫秒(0到999)
zzz 第二个小数部分, 有尾随零的毫秒(000到999)
AP / A 使用AM / PM显示 AM--上午 PM--下午
ap / a 使用am / pm显示
t 时区
QDateTimeEdit:
import sys
from PyQt5.QtWidgets import QApplication, QWidget,QDateTimeEdit,QPushButton
from PyQt5.QtCore import QDateTime,QDate,QTime class Demo(QWidget):
def __init__(self):
super().__init__()
self.resize(300,300)
def A():
s=t.elapsed() #返回从start()或restart()开始计时到这条语句的毫秒数 #section操作
s = dte1.sectionCount() # 获取section个数--就是日期时间格式个数
s=dte1.currentSectionIndex() #返回当前Section的序号
dte1.setFocus() #注意:获取焦点指令会把section的序号返回0
#dte1.setCurrentSectionIndex(3) #设置当前操作的日期时间section--根据序号 dte1.setCurrentSection(QDateTimeEdit.SecondSection) #设置当前操作的日期时间section--根据指定的section
#QDateTimeEdit.YearSection 年部分
#QDateTimeEdit.MonthSection 月部分
#QDateTimeEdit.DaySection 日部分
#QDateTimeEdit.HourSection 小时部分
#QDateTimeEdit.MinuteSection 分部分
#QDateTimeEdit.SecondSection 秒部分
#QDateTimeEdit.MSecSection 毫秒部分
#QDateTimeEdit.AmPmSection
#QDateTimeEdit.NoSection 没有 s=dte1.sectionText(QDateTimeEdit.HourSection) #返回指定section的文本
print(s) def B():
dte1.setCalendarPopup(True) #是否弹出日历控件
#True 按钮变成下拉按钮,点击下拉按钮弹出日历控件
#calendarPopup() 返回是否弹出日历控件 s=dte1.dateTime() #获取QDateTime
s=dte1.date() #获取QDate
s=dte1.time() #获取QTime btn=QPushButton('按钮',self)
btn.move(80,250)
btn.clicked.connect(A)
btn1 = QPushButton('按钮1', self)
btn1.move(160, 250)
btn1.clicked.connect(B)
dte=QDateTimeEdit(self) #实例化一个日期时间控件
dte.move(100,20)
dt=QDateTime(1968,1,4,7,38,4) #创建日期时间对象;1968年1月4日7点38分4秒
dte1 = QDateTimeEdit(dt,self) # 实例化一个日期时间控件--自定义日期时间
#参数1 可以是QDateTime,QDate,QTime
dte1.move(100,70)
dte2 = QDateTimeEdit(QDate.currentDate(), self) # 实例化一个日期控件--没有时间
dte2.move(100, 120)
dte2 = QDateTimeEdit(QTime.currentTime(), self) # 实例化一个时间控件--没有日期
dte2.move(100, 170) #QDateTime类
dt=QDateTime.currentDateTime() #获取系统当前日期时间
#QDateTime(2019, 6, 6, 10, 37, 26, 884)
dt1=dt.addYears(2) #在dt基础上增加2年后赋值给dt1,dt不变
dt1=dt.addMonths(2) #在dt基础上增加2月后赋值给dt1,dt不变
dt1=dt.addSecs(2) #在dt基础上增加2秒后赋值给dt1,dt不变
dt1 = dt.addMSecs(2) #在dt基础上增加2毫秒后赋值给dt1,dt不变
dt1 = dt.addDays(2) # 在dt基础上增加2日后赋值给dt1,dt不变
s=dt.offsetFromUtc() #返回与国际标准时间的差,秒 #dte1.setDisplayFormat('yy-MM-dd mm:ss:zzz') #设置显示格式
#displayFormat() -> str 返回格式符 #日期时间范围:
dte1.setMaximumDateTime(QDateTime(2020, 2, 10, 1, 5, 5)) # 设置最大日期时间
# 默认 9999年12月31日 23:59:59 999毫秒
#maximumDateTime() -> QDateTime 返回最大日期时间
#clearMaximumDateTime() 清除自定义的最大日期时间,恢复默认值
#setMinimumDateTime(QDateTime) 设置最小日期时间
#minimumDateTime() -> QDateTime 返回最小日期时间
#clearMinimumDateTime() 清除自定义的最小日期时间,恢复默认值
#dte1.setDateTime() #设置日期时间范围范围 #日期范围:
#setMaximumDate(QDate) 设置最大日期,默认包含9999年12月31日
#maximumDate() -> QDate 获取最大日期
#clearMaximumDate() 清除自定义最大日期, 恢复默认
#setMinimumDate(QDate) 设置最小日期,默认1752年9月14日
#minimumDate() -> QDate 获取最小日期
#clearMinimumDate() 清除自定义最小日期, 恢复默认
#setDateRange(min_date, max_date) 日期范围 #时间范围:
#setMaximumTime(QTime) 设置最大时间
#maximumTime() -> QTime 返回最大时间
#clearMaximumTime() 清除自定义时间
#setMinimumTime(QTime) 设置最小时间
#minimumTime() -> QTime 返回最小时间
#clearMinimumTime() 清除最小时间
#setTimeRange(min_time, max_time) 设置范围 #QDateEdit 日期控件款
#QTimeEdit 时间控件框 #QTime类
t1=QTime(8,20) #实例化时间对象-8点20分
t=QTime.currentTime() #获取系统当前时间
t.start() #开始计时
#restart() 重新开始计时 t1=t.addSecs(5) #在t基础上增加5秒后赋值给t1,t不变
t1=t1.addMSecs(5) #在t基础上增加5毫秒后赋值给t1,t不变
t1=t.hour() #获取hour
t1=t.minute() #获取minute
t1=t.second() #获取second
t1=t.msec() #获取毫秒 #QDate类
d=QDate(1968,1,4)
d.setDate(1996, 3, 18) #设置日期
d = QDate.currentDate() # 获取当前日期
print(d)
s=d.addYears(2) #增加2年,d不变
s=d.addMonths(2) #增加2月,d不变
s=d.addDays(2) #增加2日,d不变
s=d.day() #获取日
s=d.month() #获取月
s=d.year() #获取年
s=d.dayOfWeek() #获取星期几
s=d.dayOfYear() #这一年 第几日
s=d.daysInMonth() #这一月总共多少天
s=d.daysInYear() #这一年总共多少天
s=d.daysTo(QDate(2019,5,4)) #计算时间差 单位:日
#参数中的日期减去d
print(s) #信号
dte1.dateTimeChanged.connect(lambda x:print('日期时间改变了',x)) #日期时间发生改变时发出信号
#把改变后的QDateTime传给槽函数
#dateChanged(QDate date) 日期改变时发出信号
#timeChanged(QTime time) 时间改变时发出信号 if __name__ == '__main__':
app = QApplication(sys.argv)
demo = Demo()
demo.show()
sys.exit(app.exec_())
天子骄龙
日期与时间控件QDate, QTime, QDateTime的更多相关文章
- VB6.0中,DTPicker日期、时间控件不允许为空时,采用文本框与日期、时间控件相互替换赋值(解决方案)
VB6.0中,日期.时间控件不允许为空时,采用文本框与日期.时间控件相互替换赋值,或许是一个不错的选择. 实现效果如下图: 文本框txtStopTime1 时间框DTStopTime1(DTPicke ...
- DatePicker日期与时间控件
DatePicker日期与时间控件 一.简介 二.方法 最日常的使用方法了 日期控件DatePicker 时间控件TimePicker 月份从0开始 三.代码实例 效果图: 代码: fry.Activ ...
- 【转】Pro Android学习笔记(十七):用户界面和控制(5):日期和时间控件
目录(?)[-] DatePicker和TimePicker控件 DigitalClock和AnalogClock控件 DatePicker和TimePicker控件 使用DatePicker和Tim ...
- flutter showDatePicker显示中文日期_Flutter时间控件显示中文
flutter showDatePicker showTimePicker显示中文日期 1.配置flutter_localizations依赖 找到pubspec.yaml配置flutter_loca ...
- 自带日期时间 showDatePicker显示中文日期_Flutter时间控件显示中文
flutter showDatePicker showTimePicker显示中文日期 1.配置flutter_localizations依赖 找到pubspec.yaml配置flutter_loca ...
- 日期时间设置 QDate, QTime, QDateTime
#!/usr/bin/python3 from PyQt5.QtCore import QDate, QTime, QDateTime, Qt now = QDate.currentDate() pr ...
- jquery 时间控件怎么能禁止输入只能选择日期?
jsp一个input输入框用的是easyui时间控件,现在问题是如何是这个input只能点击选择日期,而禁止手动输入 解决方法::: 在日期的input标签里面添加::::editable=" ...
- 令人头痛的ExtJS日期时间控件
1 缘由 Ext提供了日期.时间的控件,但没有将日期和时间组合在一起的控件.在网上搜索时,有前辈创建或重写了时间相关的类,并提供了源码.不得不说那位作者对 extjs 框架理解得很透彻,虽然不知道他当 ...
- jquery日期时间控件
代码下载地址: jquery日期时间控件下载地址 . 工作中用到, 这里分享一下, 避免重复摸索劳动. 一. HTML 文件 <!DOCTYPE HTML PUBLIC "- ...
随机推荐
- matplotlib之scatter绘制散点
# 使用matplotlib.pyplot.scatter绘制散点 import matplotlib.pyplot as plt from pylab import mpl # 设置默认字体,解决中 ...
- matlab中输入x. 与x的区别
参考:http://www.madio.net/thread-27742-1-1.html 点乘的话,是对应元素相乘. 没点的话,按照矩阵相乘法则进行,这就要求前一个矩阵的列数等于第二个矩阵的行数. ...
- 云时代的IT运维面临将会有哪些变化
导读 每一次IT系统的转型,运维系统和业务保障都是最艰难的部分.在当前企业IT系统向云架构转型的时刻,运维系统再一次面临着新的挑战.所以在数据中心运维的时候,运维人员应该注意哪些问题? 在云计算时代, ...
- BZOJ5343[Ctsc2018]混合果汁——主席树+二分答案
题目链接: CTSC2018混合果汁 显然如果美味度高的合法那么美味度低的一定合法,因为美味度低的可选方案包含美味度高的可选方案. 那么我们二分一个美味度作为答案然后考虑如何验证? 选择时显然要贪心的 ...
- Link-Cut Tree(LCT)&TopTree讲解
前言: Link-Cut Tree简称LCT是解决动态树问题的一种数据结构,可以说是我见过功能最强大的一种树上数据结构了.在此与大家分享一下LCT的学习笔记.提示:前置知识点需要树链剖分和splay. ...
- day22 ramdom 模块
import random #随机整数 random.randint(1,5) # 大于等于1且小于等于5之间的整数 random.randrange(1,10,2) # 大于等于1且小于10之间的奇 ...
- 11 Zabbix Item类型之Zabbix Calculated 计算型Item类型
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 11 Zabbix Item类型之Zabbix Calculated 计算型Item类型 计算类型 ...
- android限制横竖屏切换 方法
在需要限制横竖屏切换的时候,只需要在AndroidManifest.xml文件中加入android:screenOrientation属性限制. android:screenOrientation=& ...
- [luogu1829][bzoj2154][国家集训队]Crash的数字表格 / JZPTAB【莫比乌斯反演】
传送门:洛谷,bzoj 题目描述 今天的数学课上,Crash小朋友学习了最小公倍数(Least Common Multiple).对于两个正整数a和b,LCM(a, b)表示能同时整除a和b的最小正整 ...
- Asp.net与office web apps的整合
其实网上有关office web app的整合已经有相关的文章了,典型的是如何整合Office Web Apps至自己开发的系统(一) 和如何整合Office Web Apps至自己开发的系统(二), ...