Skip to content
Related Articles
Get the best out of our app
GFG App
Open App
geeksforgeeks
Browser
Continue

Related Articles

PyQt5 QRadioButton

Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article

Radio button has a circular shape and used when one choice is to be selected from multiple options. This button is in the selected state when the circle is filled and deselected when the circle is hollow. QRadioButton class is used to add a radio button in an application.
 

Example:
A window asking the user to select user’s gender. According to the user’s choice, it shows a message: “You are male/female” and which will change if the user changes his/her selection.
Below is the code: 
 

Python3




import sys
from PyQt5 import QtCore, QtGui, QtWidgets
 
class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(466, 299)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
         
        # Radio button for male
        self.radioButton_male = QtWidgets.QRadioButton(self.centralwidget)
        self.radioButton_male.setGeometry(QtCore.QRect(180, 120, 95, 20))
 
        # adding signal and slot
        self.radioButton_male.toggled.connect(self.maleselected)
        
        # Radio button for female
        self.radioButton_female = QtWidgets.QRadioButton(self.centralwidget)
        self.radioButton_female.setGeometry(QtCore.QRect(180, 150, 95, 20))
 
        # adding signal and slot
        self.radioButton_female.toggled.connect(self.femaleselected)
         
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(170, 90, 211, 20))
        MainWindow.setCentralWidget(self.centralwidget)
 
        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
     
    def maleselected(self, selected):
        if selected:
            self.label.setText("You are male")
             
    def femaleselected(self, selected):
        if selected:
            self.label.setText("You are female")       
             
    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
 
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.radioButton_male.setText(_translate("MainWindow", "Male"))
        self.label.setText(_translate("MainWindow", "Select your gender:"))
        self.radioButton_female.setText(_translate("MainWindow", "Female"))
 
# Driver Code
if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
   
    MainWindow = QtWidgets.QMainWindow()
    ui = Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())


Output:
 

According to user’s choice a message will appear “You are male” or “You are female” and which will change as user changes his/her selection. 
 

 


My Personal Notes arrow_drop_up
Last Updated : 21 May, 2021
Like Article
Save Article
Similar Reads
Related Tutorials