QFileSystemModel和QTreeView

时间:2018-01-01 09:50:16

标签: c++ qt qfilesystemmodel

我通过QTreeView显示QFileSystemModel。

每当用户点击目录(展开或未展开)时,我想获得此目录中的文件列表。

void MyModel::selectionChanged(const QItemSelection& selected,const QItemSelection& deselected) {
    for (auto const & it : selected.indexes()) {
        for (int i=0;i<rowCount(it);i++) {
            auto child = it.child(i, it.column());
            qDebug() << fileName(child);
        }
    }
}

上述代码的问题是,只有在扩展了特定目录后,这才会起作用。只要目录从未展开过(自程序启动以来),rowCount为0。

如何强制模型填充给定模型索引的子项?没有必要在视图中显示孩子?在这种情况下,一级儿童指数就足够了。

0 个答案:

没有答案