下面使用了4中不同的時間格式來顯示不同的時間情況, 如日期和時間的顯示等
""" 輸入各種風格的日期和時間 QDataTimeEdit """ """ 日歷控件 QCalendarWidget """ import sys, math from PyQt5.QtWidgets import * from PyQt5.QtGui import * from PyQt5.QtCore import * class DataTimeEdit1(QWidget): def __init__(self): super(DataTimeEdit1, self).__init__() self.initUI() def initUI(self): vlayout = QVBoxLayout() dateTimeEdit1 = QDateTimeEdit() dateTimeEdit2 = QDateTimeEdit(QDateTime.currentDateTime()) dateTimeEdit1.setMinimumDate(QDate.currentDate().addDays(-365)) dateTimeEdit1.setMaximumDate(QDate.currentDate().addDays(365)) self.dateTimeEdit = dateTimeEdit1 #設置下拉的時間框 dateTimeEdit2.setCalendarPopup(True) dateEdit = QDateTimeEdit(QDate.currentDate()) timeEdit = QDateTimeEdit(QTime.currentTime()) dateTimeEdit1.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") dateTimeEdit1.dateChanged.connect(self.onDateChanged) dateTimeEdit1.timeChanged.connect(self.onTimeChanged) dateTimeEdit1.dateTimeChanged.connect(self.onDateTimeChanged) self.btn = QPushButton('獲取日期和時間') self.btn.clicked.connect(self.onButtonClick) vlayout.addWidget(dateTimeEdit1) vlayout.addWidget(dateTimeEdit2) vlayout.addWidget(dateEdit) vlayout.addWidget(timeEdit) vlayout.addWidget(self.btn) self.resize(300, 90) self.setWindowTitle("設置不同風格的日期和時間") self.setLayout(vlayout) #日期變化 def onDateChanged(self, date): print(date) #時間變化 def onTimeChanged(self, time): print(time) #日期和時間變化 def onDateTimeChanged(self, datetime): print(datetime) def onButtonClick(self): datetime = self.dateTimeEdit.dateTime() print(datetime) #最大日期 print(self.dateTimeEdit.maximumDate()) #最大日期和時間 print(self.dateTimeEdit.maximumDateTime()) #最小日期 print(self.dateTimeEdit.minimumDateTime()) if __name__ == "__main__": app = QApplication(sys.argv) main = DataTimeEdit1() main.show() sys.exit(app.exec_())