我试图创建一个Qt应用程序,显示一个文件夹(在Mac OS中“用户”文件夹)中的内容。下面是代码:
QFileSystemModel *dirModel = new QFileSystemModel;
dirModel->setRootPath("/Users");
ui->listView->setModel(dirModel);
我也用this code尝试
当我运行,而不是示出“/用户”文件夹的内容的应用,它示出了根驱动器(注:该驱动器不是内容)。该文件夹确实存在,我也使用其他文件夹尝试。
你尝试迫使指数显示目录?
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"));