介绍

QCalendar是一个日历控件,它提供了一个基于月份的视图,允许用户通过鼠标或键盘选择日期,默认选中的是今天的日期。

也可以对日历的日期范围进行规定。

方法

方法

描述

setDateRange()

设置日期范围选择

setDateRange()

重新设置星期的第一天,默认是星期日。其参数枚举值如下:

Qt.Monday,星期一

Qt.Tuseday,星期二

Qt.Wednesday,星期三

Qt.Thursday,星期四

Qt.Friday,星期五

Qt.Saturday,星期六

Qt.SUnday,星期日

setMinimumDate()

设置最大日期

setMaxmumDate()

设置最小日期

setSelectedDate()

设置一个QDate对象,作为日期控件所选定的日期

maximumDate()

获取日历控件的最大日期

minimumDate()

获取日历控件的最小日期

selectedDate()

返回当前选定的日期

setGridvisible()

设置日历控件是否显示网络

代码

import sys
from PyQt5 import QtCore
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtCore import QDate

class CalendarExample( QWidget):
def __init__(self):
super(CalendarExample, self).__init__()
self.initUI()

def initUI(self):
self.cal = QCalendarWidget(self)
self.cal.setMinimumDate(QDate(1980, 1, 1))
self.cal.setMaximumDate(QDate(3000, 1, 1))
self.cal.setGridVisible(True)
self.cal.move(20, 20)
self.cal.clicked[QtCore.QDate].connect(self.showDate)
self.lbl = QLabel(self)
date = self.cal.selectedDate()
self.lbl.setText(date.toString("yyyy-MM-dd dddd"))
self.lbl.move(20, 300)
self.setGeometry(100,100,400,350)
self.setWindowTitle('Calendar 例子')

def showDate(self, date):
self.lbl.setText(date.toString("yyyy-MM-dd dddd") )

if __name__ == '__main__':
app = QApplication(sys.argv)
demo = CalendarExample()
demo.show()
sys.exit(app.exec_())

展示

日历控件QCalendar_日历控件

后记

感觉一天天的挺忙的,但是不想停下来。