QAbstractListModel& QML:刷新行颜色

时间:2015-03-09 15:15:12

标签: c++ qt model tableview qml

我有一个QAbstractListModel,当我的数据发生变化时,我会发出dataChanged(…),我的观看内容已正确更新。

但只有内容,而不是颜色:如果颜色取决于我的模型项的状态,那么它不会刷新。

以下是我在QML中itemDelegate的{​​{1}}的简化:

TableView

TableView { model: myModel itemDelegate: Text { text: debug("value", styleData.value) color: debug("color", myModel.getMyBooleanState(styleData.row) ? 'blue' : 'red') } // … } 只需在调用函数时记录:

debug()

function debug(tag, value) { console.log(tag + ": " + value) return value } 是我模型的成员函数:

getMyBooleanState()

开始时,正确初始化文本和颜色。但每次我发出Q_INVOKABLE bool getMyBooleanState(int rowIndex) const; 时,只更新值,而不是颜色。

如何更新颜色?

0 个答案:

没有答案