Open In App

PyQt5 – Block signals of push button

Last Updated : 09 Jan, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

In this article we will see how we can block the signals of the button, blocking signals means stopping the button to do this assigned task. It is used to make a button deactive. In order to do this we will use blockSignals method which belongs to QObject class.

Syntax : button.blockSignals(True) Argument : It takes bool as argument. Action performed: It blocks the signal of button.

Code : 

Python3




# importing libraries
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
import sys
 
 
class Window(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 widgets
    def UiComponents(self):
 
        # creating a push button
        button = QPushButton("CLICK", self)
 
        # setting geometry of button
        button.setGeometry(200, 150, 100, 30)
 
        # adding action to a button
        button.clicked.connect(self.clickme)
 
        # blocking signals of the button
        button.blockSignals(True)
         
 
    # action method
    def clickme(self):
 
        # printing pressed
        print("pressed")
 
# create pyqt5 app
App = QApplication(sys.argv)
 
# create the instance of our Window
window = Window()
 
# start the app
sys.exit(App.exec())


Output : pyqt-disable-button When this button will be clicked nothing will happen.



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads