我找到了答案,但在这里找不到任何东西所以我问它。
使用QStandardModel
,使用命令函数QModelIndex
从itemFromIndex
获取项目非常简单。
model = openedIndex.model()
item = model.itemFromIndex(openedIndex)
我对基本相同的感兴趣,但对于QFileSystemModel
,我是否有一种简单或直接的方式来做到这一点。无法在文档中看到任何内容。
答案 0 :(得分:1)
QFileSystemModel
没有任何项目类。它不会为每个项目创建对象。
您可能会发现QFileSystemModel::filePath
和QFileSystemModel::index
方法很有用。它们允许将索引转换为路径,反之亦然。索引和路径都可以用作唯一的项标识符。
无法直接禁用QFileSystemModel
中的某些项目。您需要创建一个代理模型类,它将返回与源模型几乎相同的数据和标志,但在需要时删除Qt::ItemIsEnabled
标志。