QFileSystemModel

时间:2018-05-04 08:48:27

标签: qt qml

我尝试从QFileSystemModel派生模型,向CheckBox中显示的委托添加了TreeView,并希望在Qt :: CheckStateRole中保存复选框的状态。然而, 为什么无法在Qt::CheckStateRole中使用QFileSystemModel?我将CheckStateRole添加到我的派生模型中:

QHash<int,QByteArray> roleNames() const Q_DECL_OVERRIDE
{
     QHash<int, QByteArray> result = QFileSystemModel::roleNames();
     result.insert(UrlStringRole, QByteArrayLiteral("urlstring"));
     result.insert(SizeRole, QByteArrayLiteral("size"));
     result.insert(LastModifiedRole, QByteArrayLiteral("lastModified"));
     result.insert(IsDirRole, QByteArrayLiteral("isDir"));
     result.insert(Qt::CheckStateRole,QByteArrayLiteral("checkState"));
     return result;
}

但在qml中我做

 console.log('checkstaterole',model.checkState)

在我的qml委托中,它表示&#39; checkstaterole undefined&#39;。

为什么不能在QFileSystemModel中使用CheckStateRole?我认为从QAbstractItemModel派生的每个模型都有这个角色。

0 个答案:

没有答案