PyQt5 – Set Skin to intermediate CheckBox when pressed
In this article we will see how we can set skin to check box when it is already in intermediate (indeterminate) state and when it get pressed. By default there is no skin associated to the check box, skin is basically background image that can adjust it self according to the size of check box.
Intermediate or indeterminate state is the third state of the check box which can be added with the help of setTristate
method.
In order to do add skin to the intermediate check box when it get pressed we have to edit the style sheet code, below is the style sheet code.
QCheckBox::indeterminate:pressed
{
border-image : url(image.png);
}
Below is the implementation.
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__()
self .setWindowTitle( "Python " )
self .setGeometry( 100 , 100 , 600 , 400 )
self .UiComponents()
self .show()
def UiComponents( self ):
checkbox1 = QCheckBox( 'Geek ?' , self )
checkbox1.setGeometry( 200 , 150 , 100 , 40 )
checkbox1.setTristate( True )
checkbox1.setStyleSheet( "QCheckBox::indeterminate:pressed"
"{"
"border-image : url(image.png);"
"}" )
App = QApplication(sys.argv)
window = Window()
sys.exit(App. exec ())
|
Output :
Last Updated :
22 Apr, 2020
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...