Open In App
Related Articles

PyQt5 QCalendarWidget – Removing memory reference

Improve Article
Save Article
Like Article

In this article, we will see how we can get delete the reference of the QCalendarWidget. Removing the last Python reference of the calendar object won’t be enough to fully clean up, because there could still be a reference held on the Qt side. In general, Qt tends not to implicitly delete objects. So there may be a need to take steps to delete them explicitly if memory usage is a concern.

In order to do this we will use deleteLater method with the QCalendarWidget object.
Syntax : calendar.deleteLater()
Argument : It takes no argument
Return : It returns None 

Below is the implementation 


# importing libraries
from PyQt5.QtWidgets import *
from PyQt5 import QtCore, QtGui
from PyQt5.QtGui import *
from PyQt5.QtCore import *
import sys
class Window(QMainWindow):
    def __init__(self):
        # setting title
        self.setWindowTitle("Python ")
        # setting geometry
        self.setGeometry(100, 100, 600, 400)
        # calling method
        # showing all the widgets
    # method for components
    def UiComponents(self):
        # creating a QCalendarWidget object
        calendar = QCalendarWidget(self)
        # setting geometry to the calendar
        calendar.setGeometry(10, 10, 400, 250)
        # deleting the memory reference explicitly
        # creating a label
        label = QLabel(self)
        # setting geometry to the label
        label.setGeometry(100, 280, 250, 60)
        # making label multi line
        # setting text to the label
        label.setText("Calendar is deleted")
# create pyqt5 app
App = QApplication(sys.argv)
# create the instance of our Window
window = Window()
# start the app

Output : 


Last Updated : 04 Jul, 2021
Like Article
Save Article
Similar Reads
Related Tutorials