1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| class ColorDelegate(QItemDelegate):
def __init__(self, parent=None, *args):
QItemDelegate.__init__(self, parent, *args)
def paint(self, painter, option, index):
painter.save()
pen = QPen()
pen.setBrush(Qt.white);
painter.setPen(pen)
value = index.data(Qt.DisplayRole)
if value.isValid():
text = value.toString()
try :
f = float(text)
if f > 10:
painter.setBrush(QBrush(Qt.red))
except ValueError:
pass
painter.drawRect(option.rect)
painter.setPen(QPen(QBrush(QColor(Qt.black))))
value = index.data(Qt.DisplayRole)
if value.isValid():
text = value.toString()
painter.drawText(option.rect, Qt.AlignLeft, text)
painter.restore() |
Partager