VOOZH about

URL: https://www.geeksforgeeks.org/python/pyqt5-qcombobox-change-border-style-of-lineedit-part-for-non-editable-state-and-mouse-hover/

⇱ PyQt5 QComboBox – Change border style of lineedit part for non editable state and mouse hover - GeeksforGeeks


  • Courses
  • Tutorials
  • Interview Prep

PyQt5 QComboBox – Change border style of lineedit part for non editable state and mouse hover

Last Updated : 17 May, 2020
In this article we will see how we can change the border style to the line edit part of the non-editable combo box when mouse hover over it, line edit is the part of combo box which displays the selected item, it is editable by nature. In order to set and access the line edit object we use setLineEdit and lineEdit method respectively. Anti hover state is when mouse is not on the combo box. Note : When we create line edit object it make the combo box editable therefore there is a need to stop line edit to receive input.
In order to do this we have to do the following : 1. Create a combo box 2. Add item to the combo box 3. Create a QLineEdit object 4. Set border to QLineEdit object 5. Add border style to it when mouse hover over it 6. Make it read only 7. Add QLineEdit object to the combo box
Syntax :
# creating line edit object
line_edit = QLineEdit()

# setting border to the line edit part
# set border style
line_edit.setStyleSheet("QLineEdit::hover"
 "{"
 "border : 4px black;"
 "border-style : dotted;"
 "}")

# making line edit non editable
line_edit.setReadOnly(True)

# adding line edit object to the combo box
self.combo_box.setLineEdit(line_edit)
Below is the implementation Output :
Comment