Niestandardowy kolor tekstu dla niektórych indeksów w QTreeView
Chciałbym narysować teksty w jednej z kolumn w widgecie QTreeView przy użyciu niestandardowego koloru (w zależności od danych związanych z każdym rzędem). Próbowałem przeciążyć metodę chronioną przez drawRow () i zmienić parametr opcji stylu w ten sposób (przykład z obcinaniem):
virtual void drawRow(QPainter* p_painter, const QStyleOptionViewItem& option,
const QModelIndex& index) const
{
QStyleOptionViewItem optionCustom = option;
if (index.column() == 2)
{
optionCustom.palette.setColor(QPalette::Text, Qt::red);
}
QTreeView::drawRow(p_painter, optionCustom, index);
}
Ale oczywiście brakuje mi czegoś, ponieważ wydaje się, że to nie działa (starałem się zmienić takżeQPalette::WindowText
rola koloru).