14

フォルダ (Mac OS の「Users」フォルダ) の内容を表示する Qt アプリケーションを作成しようとしています。コードは次のとおりです。

QFileSystemModel *dirModel = new QFileSystemModel;
dirModel->setRootPath("/Users");

ui->listView->setModel(dirModel);

私もこのコードを使ってみました

アプリケーションを実行すると、「/Users」フォルダの内容を表示する代わりに、ルート ドライブが表示されます (注: ドライブの内容ではありません)。フォルダーは存在し、他のフォルダーも使用してみました。

4

2 に答える 2

15

インデックスにディレクトリを表示するように強制しようとしましたか?

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();
}
于 2012-09-10T19:10:52.643 に答える
9

このコードも私にとってはうまくいきました:

QFileSystemModel *dirModel = new QFileSystemModel(this);
dirModel->setRootPath("/Users");

ui->listView->setModel(dirModel);
ui->listView->setRootIndex(dirModel->setRootPath("/Users"));
于 2012-09-11T12:01:36.337 に答える