0

我在Linux下的Qt4.8中有以下代码:

 QFileSystemModel* dir_model = new QFileSystemModel;
 dir_model->setRootPath("/usr");
 ui->dir_tree->setModel(dir_model);

树小部件没有显示“/usr”,而是显示了我的主目录。如果我在我家上方提供任何东西(如“/”、“/etc”、“/media”),它总是显示我的家,上面什么都没有。如果我在家里提供一些东西,比如“/home/semen/something”,它会准确地显示这个目录,没有问题。我无法弄清楚我做错了什么。我应该怎么做才能显示例如“/media/something”?

4

1 回答 1

0

然后您必须为视图设置根索引。

QFileSystemModel* dir_model = new QFileSystemModel;
QModelIndex rootIndex = dir_model->setRootPath("/usr");
ui->dir_tree->setModel(dir_model);
ui->dir_tree->setRootIndex(rootIndex);  // you are missing this step
于 2015-12-04T15:59:27.697 回答