Следующий фрагмент правильно устанавливает цвета отдельных записей в раскрывающемся списке ComboBox.Однако, когда элемент выбран и перенесен в поле CurrentText, все записей в раскрывающемся списке изменяются на цвет CurrentText.Как передать цвет записи для отображения в виде CurrentText без , влияющего на раскрывающийся список?
import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
class ComboDemo(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
def combo_changed():
for color in ('red', 'green', 'blue'):
if color == cb.currentText():
cb.setStyleSheet('color: {}'.format(color))
grid = QGridLayout()
cb = QComboBox()
grid.addWidget(cb, 0, 0)
model = cb.model()
for color in ('red', 'green', 'blue'):
entry = QStandardItem(color)
entry.setForeground(QColor(color))
model.appendRow(entry)
cb.currentIndexChanged.connect(combo_changed)
self.setLayout(grid)
self.show()
app = QApplication(sys.argv)
c = ComboDemo()
app.exec_()