PyQt5之QCalendarWidget

十八、QCalendarWidget

1.描述

提供了一个基于每月日历控件,允许用户选择一个日期。

继承自QWidget

2.功能作用

(1) 构造函数

QCalendarWidget(parent: QWidget = None)

(2) 日期范围

setMinimumDate(QDate date)
minimumDate() -> QDate
setMaximumDate(QDate date)
maximumDate() -> QDate
setDateRange(QDate min, QDate max)

(3) 日期编辑

setDateEditEnabled(bool enable)
isDateEditEnabled() -> bool

setDateEditAcceptDelay(int delay)
dateEditAcceptDelay() -> int

(4) 日期获取

monthShown() -> int
yearShown() -> int
selectedDate() -> QDate

(5) 格式外观

# 导航条
isNavigationBarVisible() -> bool
setNavigationBarVisible(bool)

# 一周的第一天
setFirstDayOfWeek(Qt.DayOfWeek dayOfWeek)
firstDayOfWeek() -> Qt.DayOfWeek

# 网格显示
isGridVisible() -> bool
setGridVisible(bool)

# 文本格式
setHeaderTextFormat(QTextCharFormat format)
headerTextFormat() -> QTextCharFormat
setHorizontalHeaderFormat(QCalendarWidget.HorizontalHeaderFormat format)
horizontalHeaderFormat() -> QCalendarWidget.HorizontalHeaderFormat
"""
QCalendarWidget.HorizontalHeaderFormat
    QCalendarWidget.SingleLetterDayNames
        英文
            M
        中文
            周
    QCalendarWidget.ShortDayNames
        英文
            Mon
        中文
            周一
    QCalendarWidget.LongDayNames
        英文
            Monday
        中文
            星期一
    QCalendarWidget.NoHorizontalHeader
        标题是隐藏的。
        """
setVerticalHeaderFormat(QCalendarWidget.VerticalHeaderFormat format)
verticalHeaderFormat() -> QCalendarWidget.VerticalHeaderFormat
"""
QCalendarWidget.VerticalHeaderFormat
    QCalendarWidget.ISOWeekNumbers	
        标题显示ISO周数,如QDate.weekNumber()所述。
    QCalendarWidget.NoVerticalHeader
        标题是隐藏的。
"""
setWeekdayTextFormat(self, Qt.DayOfWeek, QTextCharFormat)
weekdayTextFormat(Qt.DayOfWeek dayOfWeek) -> QTextCharFormat

setDateTextFormat(QDate date, QTextCharFormat format)
dateTextFormat(self, Union[QDate, datetime.date]) -> QTextCharFormat
dateTextFormat(self) -> object

(6) 选中

setSelectedDate(QDate date)
setSelectionMode(QCalendarWidget.SelectionMode mode)
selectionMode() -> QCalendarWidget.SelectionMode
"""
QCalendarWidget.SelectionMode
    QCalendarWidget.NoSelection
        日期无法选择。
    QCalendarWidget.SingleSelection
        可以选择单日期。
"""

(7) 常用的方法

showToday()
showSelectedDate()
showNextYear()
showPreviousYear()
showNextMonth()
showPreviousMonth()
setCurrentPage(int year, int month)

3.信号

activated(QDate date) # 只要用户按下Return或Enter键或双击日历小部件中的日期,就会发出此信号。
clicked(QDate date) # 单击有效日期时才会发出信号
currentPageChanged(int year, int month) # 当前显示的月份更改时会发出此信号。新的一年和一个月作为参数传递。
selectionChanged() # 当前选择的日期更改时会发出此信号
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值