Я показываю QFileSystemModel через QTreeView.
Всякий раз, когда пользователь щелкает каталог (расширенный или нерасширенный), я хочу получить список файлов внутри этого каталога.
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.
Как я могу заставить модель заполнять дочерние элементы данного индекса модели? Без обязательного показа детей в представлении? В этом случае будет достаточно одного уровня дочерних индексов.
QDirIterator
и перебирать его содержимое? - person G.M.   schedule 01.01.2018