文章目录
日历控件
def set_ui(self):
# 实例化
cw = QCalendarWidget(self)
# 设置最小日期
cw.setMaximumDate(QDate(2300, 12, 31))
cw.setMinimumDate(QDate(1970, 1, 1))
# cw.setDateRange()
print("展示的年份:", cw.yearShown())
print("展示的月份:", cw.monthShown())
print("选择的日期:", cw.selectedDate())
# 显示导航条
cw.setNavigationBarVisible(True)
print(cw.isNavigationBarVisible())
# 一周的第一天
cw.setFirstDayOfWeek(Qt.DayOfWeek.Sunday)
# 网格展示
cw.setGridVisible(True)
# 设置水平头部格式 (星期日、星期一、......)
cw.setHorizontalHeaderFormat(QCalendarWidget.HorizontalHeaderFormat.LongDayNames)
# 设置垂直头部的格式 (一年中的第几周)
# cw.setVerticalHeaderFormat(QCalendarWidget.VerticalHeaderFormat.NoVerticalHeader)
# 设置周几 这一列的格式
tcf = QTextCharFormat()
tcf.setFontFamily("Arial")
tcf.setFontPointSize(24)
tcf.setFontItalic(True)
tcf.setFontUnderline(True)
cw.setWeekdayTextFormat(Qt.DayOfWeek.Wednesday, tcf)
# 设置具体日期的文本格式
cw.setDateTextFormat(QDate(2022, 11, 26), tcf)
# 设置日期选择模式
cw.setSelectionMode(QCalendarWidget.SelectionMode.NoSelection)
# 设定日期
cw.setSelectedDate(QDate(2022, 11, 20))
# 常用方法
cw.showToday() # 展示今天日期
cw.showNextYear() # 展示下一年
cw.setCurrentPage(2020, 11, 20) # 设置当前页的日期
# 信号
cw.activated.connect(func) # 双击一个日期 或者 回车 传入QDate对象
cw.clicked.connect(func) # 点击一个日期时
cw.currentPageChanged.connect(func) # 年、月改变时
cw.selectionChanged.connect(func) # 选中的日期发生改变时
日期编辑
信号