Я пытаюсь создать приложение Qt, которое показывает содержимое папки (папка «Users» в Mac OS).
Вот код:
QFileSystemModel *dirModel = new QFileSystemModel;
dirModel->setRootPath("/Users");
ui->listView->setModel(dirModel);
Я также пытался использовать этот код
Когда я запускаю приложение, вместо отображения содержимого папки «/ Users», оно показывает корневой диск (примечание: не содержимое диска). Папка существует, и я также попытался использовать другие папки.
Вы пытались заставить индекс показывать каталог?
listView->setRootIndex(dirModel->index("/Users"));
Это прекрасно работает для меня:
#include <QtGui>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QFileSystemModel model;
model.setRootPath("/Users");
QListView view;
view.setModel(&model);
view.setRootIndex(model.index("/Users/"));
view.show();
return app.exec();
}
Этот код работал и для меня:
QFileSystemModel *dirModel = new QFileSystemModel(this);
dirModel->setRootPath("/Users");
ui->listView->setModel(dirModel);
ui->listView->setRootIndex(dirModel->setRootPath("/Users"));