Open In App

PyQt5 – How to set Skin unchecked RadioButton indicator when pressed

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

In this article we will see how we can set skin to the indicator of radio button when it get pressed and was in unchecked state. By default when we pressed the radio button there is bluish color associated with it although we can change it. The skin only appear to the indicator when it was in unchecked state and when we pressed the radio button. In order to add skin to indicator of radio button we have to change the style sheet code of it. Below is the style sheet code.

QRadioButton::indicator:unchecked:pressed
{
border-image : url(image.png);
}

Below is the implementation 

Python3




# 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):
        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 radio button
        self.radio_button = QRadioButton(self)
 
        # setting geometry of radio button
        self.radio_button.setGeometry(200, 150, 120, 40)
 
        # setting text to radio button
        self.radio_button.setText("Radio Button")
 
        # changing style sheet code of radio button
        # setting skin to unchecked indicator when it get pressed
        self.radio_button.setStyleSheet("QRadioButton::indicator:unchecked:pressed"
                                        "{"
                                        "border-image : url(image.png);"
                                        "}")
 
 
# create pyqt5 app
App = QApplication(sys.argv)
 
# create the instance of our Window
window = Window()
 
# start the app
sys.exit(App.exec())


Output :



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads