给你一个小提示, 这个是我使用的代码:
QVariant ColorItem::data(int role) const {
// 如果是字体颜色的角色, 且此字符串在设置的字符串组中, 就高亮显示.
// 如果不是字体颜色的角色, 就调用父类的data方法.
if (Qt::ForegroundRole == role) {
QString text = QStandardItem::data(Qt::DisplayRole).toString();
foreach(QString coloredText, coloredTexts) {
if ((text == coloredText) || coloredText.isEmpty()) {
return color;
}
}
return otherColor;
}
return QStandardItem::data(role);
}