In this article we will see how we can add multiple of separator in between the items of the combo box, by default there is no separator. Separator is the black line in between two items, in order to add the separator we use insertSeparator method. Below is representation of how combo box items with a separator looks like
In order to add multiple separator we will use insertSeparator method multiple times but initial giving the index value of max index then second maximum index value and so on, if we first give the minimum index value then other statements will only increase the size of the minimum index value separator.
For adding separator at two places only
Syntax :
combo_box.insertSeparator(max(indexs))
combo_box.insertSeparator(min(indexs)
Here, indexes is the list of two index
Argument : It takes integer as argument i.e index
Action performed : It will add separator at the given index
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 combo box widget self .combo_box = QComboBox( self ) # setting geometry of combo box self .combo_box.setGeometry( 200 , 150 , 150 , 30 ) # geek list geek_list = [ "Sayian" , "Super Saiyan" , "Super Sayian 2" , "Super Sayian B" ] # adding list of items to combo box self .combo_box.addItems(geek_list) # index list indexs = [ 1 , 3 , 2 ] # adding separator at maximum index self .combo_box.insertSeparator( max (indexs)) # adding separator at middle index index = 0 for i in indexs: if i > min (indexs) and i < max (indexs): index = i self .combo_box.insertSeparator(index) # adding separator at minimum index self .combo_box.insertSeparator( min (indexs)) # create pyqt5 app App = QApplication(sys.argv) # create the instance of our Window window = Window() # start the app sys.exit(App. exec ()) |
Output :