def paintCell(self, painter, rect, date): #calling original paintCell to draw the actual calendar QCalendarWidget.paintCell(self, painter, rect, date) #highlight a particular date if date in self.dateList: painter.fillRect(rect, self.color)
def paintCell(self, painter, rect, date): print('painting') QCalendarWidget.paintCell(self, painter, rect, date) if date.day() % 5 == 0: # example condition based on date painter.drawText(rect.bottomLeft(), "test")
def paintCell(self, painter, rect, date): if date in self.checkins: colour = QColor(255, 0, 0, 50) painter.fillRect(rect, colour) painter.drawText(rect.center(), str(date.day())) painter.drawText(rect.bottomLeft(), self.methods[self.checkins.index(date)]) else: QCalendarWidget.paintCell(self, painter, rect, date)
def paintCell(self, painter, rect, date): painter.setRenderHint(QPainter.Antialiasing, True) if (date.day() == 1) or (date.day() == 15): #painter.save() painter.drawRect(rect) painter.setPen(Qt.blue) painter.drawText(QRectF(rect), Qt.TextSingleLine|Qt.AlignCenter, str(date.day())) painter.restore() else: QCalendarWidget.paintCell(self, painter, rect, date)
def paintCell(self, painter, rect, date): painter.setRenderHint(QPainter.Antialiasing, True) QCalendarWidget.paintCell(self, painter, rect, date) if date in self.highlight: painter.save() painter.setPen(self.m_outlinePen) painter.setBrush(self.m_Brush) painter.drawRect(rect.adjusted(0, 0, -1, -1)) painter.restore()
def paintCell(self, painter, rect, date): QCalendarWidget.paintCell(self, painter, rect, date) if self.isHighlighted( date ) is True: painter.fillRect( rect, self.taskColor ) elif self.isOccupied( date ) is True: painter.fillRect( rect, self.occupiedColor ) if date == QDate.currentDate(): painter.drawRect( rect.left(), rect.top(), rect.width() - 1, rect.height() - 1 )
class Example(QWidget): def __init__(self): super().__init__() self.initUI() self.datelist = [] def initUI(self): vbox = QVBoxLayout(self) self.cal = QCalendarWidget(self) self.cal.setGridVisible(True) self.cal.clicked[QDate].connect(self.showDate) vbox.addWidget(self.cal) self.lbl = QLabel(self) date = self.cal.selectedDate() self.lbl.setText(date.toString()) vbox.addWidget(self.lbl) self.setLayout(vbox) self.setGeometry(300, 300, 350, 300) self.setWindowTitle('Calendar') self.show() def showDate(self, date): self.lbl.setText(date.toString()) self.datelist.append(date.toString()) #elf.paintCell print(self.datelist) #def paintCell(self, painter, rect,date): painter.setRenderHint(QPainter.Antialiasing, True) #if (date.day() == 1) or (date.day() == 15): #date1 = datetime.strptime(dat, '%A %B %d %Y') #painter.save() painter.drawRect(rect) painter.setPen(Qt.blue) painter.drawText(QRectF(rect), Qt.TextSingleLine | Qt.AlignCenter, str(date.day())) #painter.restore() self.cal.paintCell(self, painter, rect, date) self.updateCells()
def paintCell(self, painter, rect, date): painter.setRenderHint(QPainter.Antialiasing, True) if date == QDate().currentDate(): painter.save() painter.drawRect(rect) painter.setPen(QColor(168, 34, 3)) #painter.setFont(QFont('Decorative', 10)) painter.setFont(QFont('굴림', 10)) painter.drawText(QRectF(rect), Qt.TextSingleLine | Qt.AlignCenter, str(date.day())) painter.drawText(rect, Qt.AlignCenter, '한ᄀᅠᆯ') painter.restore() else: QCalendarWidget.paintCell(self, painter, rect, date)
def paintCell(self, painter, rect, date): log = dataRefining_calendar(30) painter.setRenderHint(QPainter.Antialiasing, True) if date.toString("yyyyMMdd") in log.keys(): painter.save() painter.drawRect(rect) painter.setPen(QColor(0, 0, 0)) painter.setFont(QFont('Decorative', 8)) painter.drawText(QRectF(rect), Qt.TextSingleLine, f"\n\t{str(date.day())}") painter.setPen(QColor(0, 9*16+9, 16*15+15)) painter.setFont(QFont('Decorative', 10)) painter.drawText(rect, Qt.AlignCenter, f"{str(log[date.toString('yyyyMMdd')])} min") painter.restore() else: QCalendarWidget.paintCell(self, painter, rect, date)
def paintCell(self, painter, rect, date): painter.setRenderHint(QPainter.Antialiasing, True) self.events = { QDate(2020, 10, 24), QDate(2020, 10, 15), QDate(2020, 11, 3) } if date in self.events: painter.save() painter.setBrush(Qt.yellow) painter.drawRect(rect) painter.setPen(Qt.blue) painter.drawText(QRectF(rect), Qt.TextSingleLine | Qt.AlignCenter, str(date.day())) else: QCalendarWidget.paintCell(self, painter, rect, date)
def paintCell(self, painter, rect, date): painter.setRenderHint(QPainter.Antialiasing, True) self.events = { QDate(2020, 10, 24), QDate(2020, 10, 19), QDate(2020, 10, 1), QDate(2020, 9, 29) } if date in self.events: painter.save() painter.setPen(QColor(168, 34, 3)) painter.drawEllipse(rect.topLeft() + QPoint(12, 7), 3, 3) painter.drawText(QRectF(rect), Qt.TextSingleLine | Qt.AlignCenter, str(date.day())) painter.setBrush(Qt.red) else: QCalendarWidget.paintCell(self, painter, rect, date)
def paintCell(self, painter, rect, date, **kwargs): QCalendarWidget.paintCell(self, painter, rect, date) if date.toPyDate() in self.marked_dates: self.paint_date(date, painter, rect, self.marked_dates.count(date.toPyDate()), date.toPyDate() in self.past_events)