QDirModel
フォルダとファイルの両方を含む が必要です (したがって、 を使用しています) AllEntries
。
問題は、 を呼び出しsetNameFilters()
ているときにQDirModel
、すべてのフォルダーが失われることです。フォルダをフィルタリングから除外する方法はありますか?
ありがとうございました。
QFileSystemModel
代わりに使用する必要がありますQDirModel
:
QDirModel の使用は推奨されなくなりました。QFileSystemModel クラスは、よりパフォーマンスの高い代替手段です。
Qt ドキュメント: QDirModelとQFileSystemModel
あなたの質問について - フラグの組み合わせを探してください: QDir::AllDirs | QDir::Files
in setFilter
使用する場合の簡単な例QDirModel
:
QTreeView view;
QStringList filters;
filters << "*.txt";
QDirModel* dirModel = new QDirModel(&view);
dirModel->setFilter(QDir::AllDirs | QDir::Files | QDir::NoDotAndDotDot);
dirModel->setNameFilters(filters);
view.setModel(dirModel);
view.show();
使用する場合の簡単な例QFileSystemModel
:
QTreeView view;
StringList filters;
filters << "*.txt";
QFileSystemModel* fileSystemModel = new QFileSystemModel(&view);
fileSystemModel->setRootPath("C:/");
fileSystemModel->setFilter(QDir::AllDirs | QDir::Files | QDir::NoDotAndDotDot);
fileSystemModel->setNameFilterDisables(false);
fileSystemModel->setNameFilters(filters);
view.setModel(fileSystemModel);
view.show();