PyQt5 - Hintergrundfarbe auf nicht bearbeitbare ComboBox setzen, wenn gedrückt
In diesem Artikel erfahren Sie, wie Sie die Hintergrundfarbe für das nicht bearbeitbare Kombinationsfeld festlegen können, wenn es gedrückt wird. Diese Hintergrundfarbe wird nur angezeigt, wenn sich das Kombinationsfeld im nicht bearbeitbaren Zustand befindet und gedrückt wird.
Dazu müssen wir den Stylesheet-Code des Kombinationsfelds ändern. Unten finden Sie den Stylesheet-Code
QComboBox ::! Editable: gedrückt { Hintergrundfarbe: hellgrün; }}
Unten ist die Implementierung
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
):
self
.combo_box
=
QComboBox(
self
)
self
.combo_box.setGeometry(
200
,
150
,
150
,
30
)
geek_list
=
[
"Sayian"
,
"Super Sayian"
,
"Super Sayian 2"
,
"Super Sayian B"
]
self
.combo_box.addItems(geek_list)
self
.combo_box.setStyleSheet(
"QComboBox::! editable:pressed"
"{"
"background-color: lightgreen;"
"}"
)
v
=
self
.combo_box.view()
App
=
QApplication(sys.argv)
window
=
Window()
sys.exit(App.
exec
())
Ausgabe :