PyQT5-QCalendarWidget 日历显示

时间:2021-12-17 00:09:25
 """
QCalendarWidget:提供了日历插件
Author:dengyexun
DateTime:2018.11.22
"""
from PyQt5.QtWidgets import QWidget, QCalendarWidget, QApplication, QLabel, QVBoxLayout
from PyQt5.QtCore import QDate
import sys class Example(QWidget): def __init__(self):
super().__init__() self.initUI() def initUI(self):
# 将多个控件加入到qt的布局管理器中。建立一个箱布局
vbox = QVBoxLayout(self) # # 日历对象,网格可见
cal = QCalendarWidget(self)
cal.setGridVisible(True)
# 点击日历,传入QDate数据,同showDate函数相关联
cal.clicked[QDate].connect(self.showDate) # 把日历加入到这个箱子中
vbox.addWidget(cal) # 显示选定的日期的label
self.lbl = QLabel(self)
date = cal.selectedDate()
self.lbl.setText(date.toString()) # 把label也加入到这个箱子中
vbox.addWidget(self.lbl) # 要给vbox设置布局
self.setLayout(vbox) self.setGeometry(300, 300, 350, 300)
self.setWindowTitle('Calendar')
self.show() def showDate(self, date):
"""
显示选中的日期
:param date: 点击日历组件,接收传入的参数
:return:
"""
self.lbl.setText(date.toString()) if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())