Bonjour,
Je reviens de réaliser une application, utilisant un QTreeView. Pour gérer le couleur de l'arrière plan, j'utilise un QItemDelegate, mais je n'arrive pas à le comprendre.
Le comportement que je souhaite, c'est lorsque la valeur est un flottant et supérieur à un certain seuil, la couleur de l’arrière plan devienne rouge. la fonction isFloat() de Qvariant ne fonctionne pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 class ColorDelegate(QItemDelegate): def __init__(self, parent=None, *args): QItemDelegate.__init__(self, parent, *args) def paint(self, painter, option, index): painter.save() value = index.data(Qt.DisplayRole) if value.isValid(): painter.setBrush(QBrush(Qt.red)) painter.drawRect(option.rect) painter.setPen(QPen(Qt.black)) value = index.data(Qt.DisplayRole) if value.isValid(): text = value.toString() painter.drawText(option.rect, Qt.AlignLeft, text) painter.restore()
Pouvez - vous m'aider ?
Partager