PyQt5 QCalendarWidget - Setting Enter Event - GeeksforGeeks

25 Nov, 2021
In this article we will see how we can implement the enter event for the QCalendarWidget. A enter event is sent to the calendar when the mouse cursor enters the calendar. This event handler can be reimplemented in a subclass to receive calendar enter events which are passed in the event parameter.Below is the Calendar class code  
# QCalendarWidget Class
class Calendar(QCalendarWidget):
    
    # constructor
    def __init__(self, parent=None):
        super(Calendar, self).__init__(parent)

    # overriding the enter event
    def enterEvent(self, event):

        # setting to the text to the label
        window.label.setText("Enter Event Take place")
 
Implementation steps: 1. Create a Calendar class that inherits the QCalendarWidget 2. Inside the Calendar class override the enterEvent and inside the event set the text to the label 3. Create a main window class 4. Create a Calendar object inside the main window 5. Set various properties to the calendar  
Below is the implementation  
Python3
# importing librariesfrom PyQt5.QtWidgets import *from PyQt5 import QtCore, QtGuifrom PyQt5.QtGui import *from PyQt5.QtCore import *import sys # QCalendarWidget Classclass Calendar(QCalendarWidget):     # constructor    def __init__(self, parent = None):        super(Calendar, self).__init__(parent)     # overriding the enter event    def enterEvent(self, event):         # setting to the text to the label        window.label.setText("Enter Event Take place")     # overriding the leave event    def leaveEvent(self, event):         # setting to the text to the label        window.label.setText("Leave Event Take place")  class Window(QMainWindow):     def __init__(self):        super().__init__()         # setting title        self.setWindowTitle("Python ")         # setting geometry        self.setGeometry(100, 100, 650, 400)         # calling method        self.UiComponents()         # showing all the widgets        self.show()     # method for components    def UiComponents(self):         # creating a QCalendarWidget object        # as Calendar class inherits QCalendarWidget        self.calendar = Calendar(self)         # setting geometry to the calendar        self.calendar.setGeometry(50, 10, 400, 250)         # setting cursor        self.calendar.setCursor(Qt.PointingHandCursor)          # creating label to show the properties        self.label = QLabel(self)         # setting geometry to the label        self.label.setGeometry(100, 280, 250, 60)         # making label multi line        self.label.setWordWrap(True)         # setting text to the label        self.label.setText("No Event")     # create pyqt5 appApp = QApplication(sys.argv) # create the instance of our Windowwindow = Window() # start the appsys.exit(App.exec())
Output :  
 
clintra
Python PyQt-QCalendarWidget
Python-gui
Python-PyQt
Python
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Python Dictionary
Defaultdict in Python
Enumerate() in Python
sum() function in Python
Python String | replace()
How to Install PIP on Windows ?
Deque in Python
Different ways to create Pandas Dataframe
Iterate over a list in Python
Stack in Python