PyQt5基础学习-QCalendarWidget(日历控件) 1.QCalendarWidget().setMinimumData(设置最小范围) 2. QCalendarWidget().setMaximumData(设置最大范围) 3.QCalendarWidget().setGridVisible(设置网格) 4.QCalendarWidget().selectdDate(获得所选日期)

设置日期的最小和最大范围,同时设置点击事件, 将点击的日期显示在label控件上

"""
日历控件
QCalendarWidget

"""

import sys, math
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *

class MyCalendar(QWidget):
    def __init__(self):
        super(MyCalendar, self).__init__()
        self.initUI()
    def initUI(self):
        self.cal = QCalendarWidget(self)
        self.cal.setMinimumDate(QDate(1988, 1, 1))
        self.cal.setMaximumDate(QDate(2088, 1, 1))

        #设置网格
        self.cal.setGridVisible(True)
        self.cal.move(20, 20)
        self.cal.clicked.connect(self.showDate)

        self.label = QLabel(self)
        date = self.cal.selectedDate()
        self.label.setText(date.toString("yyyy-MM-dd dddd"))
        self.label.move(20, 320)

        self.resize(400, 350)
        self.setWindowTitle("日历演示")

    def showDate(self, date):
        #方法1 通过自动输入的日期做显示
        self.label.setText((date.toString("yyyy-MM-dd dddd")))
        #方法2 根据点击所选择的内容做显示
        self.label.setText((self.cal.selectedDate().toString("yyyy-MM-dd dddd")))

if __name__ == "__main__":
    app = QApplication(sys.argv)

    main = MyCalendar()
    main.show()

    sys.exit(app.exec_())

 

posted @ 2022-01-31 22:12  c语言我的最爱  阅读(332)  评论(0编辑  收藏  举报