我有以下代码;
QStringListModel *model = new QStringListModel();
QStringList list;
ui.listViewResults->setEditTriggers(QAbstractItemView::NoEditTriggers);
ui.listViewResults->setViewMode(QListView::ListMode);
list << "A";
list << "B";
list << "C";
model->setStringList(list);
QModelIndex vIndex = model->index(0, 0);
QMap<int, QVariant> vMap = model->itemData(vIndex);
vMap.insert(Qt::BackgroundRole, QVariant(QBrush(Qt::red)));
model->setItemData(vIndex, vMap);
ui.listViewResults->setModel(model);
然而,颜色似乎没有改变,任何想法?谢谢!
答案 0 :(得分:1)
如果每个项目需要不同的背景,请使用QStandartItemModel和QStandartItem。或者您甚至可以创建自己的模型/项目子类QAbstractItemModel
使用QStandartItemModel和QStandartItem
的示例file.setReadOnly();