Exemple #1
0
    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)
Exemple #2
0
 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)
Exemple #4
0
 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()
Exemple #6
0
    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 )
Exemple #7
0
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)
Exemple #9
0
    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)
Exemple #10
0
    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)
Exemple #11
0
    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)
Exemple #12
0
 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)