QDateEdit - 绘制 calendarPopup 的单元格
QDateEdit - paint cell of calendarPopup
我使用 Qt Designer 创建自定义表单和用户界面组件,并使用 Qt 的集成构建工具 uic,在构建应用程序时为它们生成代码。生成的代码包含表单的用户界面对象。
我有带有 QDateEdit 的 QDockWidget,我想绘制某个日期的单元格:
我想做这样的事情:
date_to = self.dockwidget.findChild(QDateEdit, "date_to")
painter = QPainter()
painter.fillRect(QRect(25, 25, 25, 25), Qt.red)
date_to.calendarWidget().paintCell(painter, QRect(25, 25, 25, 25), QDate(2018, 8, 2))
在这种情况下如何使用 paintCell
Virtual function:
def paintCell (painter, rect, date)
如果其他人需要,这里有解决方案:
QCalendarWidget.setDateTextFormat(QDate, QTextCharFormat)
format = QTextCharFormat()
format.setBackground(Qt.yellow)
date_to = self.dockwidget.findChild(QDateEdit, "date_to")
date_to.calendarWidget().setDateTextFormat(QDate(2019, 2, 2),format)
结果:
我使用 Qt Designer 创建自定义表单和用户界面组件,并使用 Qt 的集成构建工具 uic,在构建应用程序时为它们生成代码。生成的代码包含表单的用户界面对象。
我有带有 QDateEdit 的 QDockWidget,我想绘制某个日期的单元格:
我想做这样的事情:
date_to = self.dockwidget.findChild(QDateEdit, "date_to")
painter = QPainter()
painter.fillRect(QRect(25, 25, 25, 25), Qt.red)
date_to.calendarWidget().paintCell(painter, QRect(25, 25, 25, 25), QDate(2018, 8, 2))
在这种情况下如何使用 paintCell
Virtual function:
def paintCell (painter, rect, date)
如果其他人需要,这里有解决方案:
QCalendarWidget.setDateTextFormat(QDate, QTextCharFormat)
format = QTextCharFormat()
format.setBackground(Qt.yellow)
date_to = self.dockwidget.findChild(QDateEdit, "date_to")
date_to.calendarWidget().setDateTextFormat(QDate(2019, 2, 2),format)
结果: