PyQt5 QListWidget – Getting Selection Rectangle Visible Property
In this article we will see how we can get the selection rectangle visible property of the QListWidget. QListWidget is a convenience class that provides a list view with a classic item-based interface for adding and removing items. QListWidget uses an internal model to manage each QListWidgetItem in the list. If this property is true then the selection rectangle is visible; otherwise it will be hidden. It can be set with the help of setSelectionRectVisible method. Note: The selection rectangle will only be visible if the selection mode is in a mode where more than one item can be selected; i.e., it will not draw a selection rectangle if the selection mode is QAbstractItemView.SingleSelection.
In order to do this we will use isSelectionRectVisible method with the list widget object. Syntax : list_widget.isSelectionRectVisible() Argument : It takes no argument Return : It returns bool
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 , 500 , 400 ) # calling method self .UiComponents() # showing all the widgets self .show() # method for components def UiComponents( self ): # creating a QListWidget list_widget = QListWidget( self ) # setting geometry to it list_widget.setGeometry( 50 , 70 , 150 , 60 ) # list widget items item1 = QListWidgetItem("A") item2 = QListWidgetItem("B") item3 = QListWidgetItem("C") # adding items to the list widget list_widget.addItem(item1) list_widget.addItem(item2) list_widget.addItem(item3) # setting selection mode property list_widget.setSelectionMode(QAbstractItemView.MultiSelection) # making selection rectangle visible list_widget.setSelectionRectVisible( True ) # creating a label label = QLabel("GeeksforGeeks", self ) # setting geometry to the label label.setGeometry( 230 , 80 , 280 , 80 ) # making label multi line label.setWordWrap( True ) # checking if selection rectangle is visible value = list_widget.isSelectionRectVisible() # setting text to the label label.setText("Selection Rect Visible : " + str (value)) # create pyqt5 app App = QApplication(sys.argv) # create the instance of our Window window = Window() # start the app sys.exit(App. exec ()) |
Output :
Please Login to comment...