In this article we will see how we can block all the signals that are associated with the QCalendarWidget. There are various signals associated with the calendar such as date change signals page change signal etc. Actions are added to the calendar using this signals only.
 
In order to do this we will use blockSignals method with the QCalendarWidget object.
Syntax : calendar.blockSignals(True)
Argument : It takes bool as argument
Return: It return bool i.e previous block signal state of calendar
Below is the implementation 
 
Python3
| # importing librariesfromPyQt5.QtWidgets import*fromPyQt5 importQtCore, QtGuifromPyQt5.QtGui import*fromPyQt5.QtCore import*importsysclassWindow(QMainWindow):    def__init__(self):        super().__init__()        # setting title        self.setWindowTitle("Python ")        # setting geometry        self.setGeometry(100, 100, 600, 400)        # calling method        self.UiComponents()        # showing all the widgets        self.show()    # method for components    defUiComponents(self):        # creating a QCalendarWidget object        self.calendar =QCalendarWidget(self)        # setting geometry to the calendar        self.calendar.setGeometry(50, 10, 400, 250)        # creating a label        label =QLabel(self)        # setting geometry        label.setGeometry(120, 280, 200, 60)        # making it multi line        label.setWordWrap(True)        # adding action to the calendar        self.calendar.selectionChanged.connect(lambda: label.setText("Selection Changed Signal"))        # adding action to the calendar        self.calendar.currentPageChanged.connect(lambda: label.setText("Page Changed Signal"))        # blocking the signals        self.calendar.blockSignals(True)        # setting text to the label        label.setText("If signal will be emitted they will be shown here")# create pyqt5 appApp =QApplication(sys.argv)# create the instance of our Windowwindow =Window()# start the appsys.exit(App.exec()) | 
Output : 
 

 
                                    







