【发布时间】:2017-11-23 00:28:48
【问题描述】:
我提前为我的英语道歉。我在简单的两面板文件管理器中有QTableView 和QFileSystemModel 作为模型。它正确显示文件和目录,但我希望它显示 DotDot 行以移动到当前目录的父级。设置QFileSystemModel::filter(QDir::AllEntries | QDir::NoDot) 没有帮助,DotDot 仍然不会显示在QTableView 中。以上所有对于 Windows 7 上的 Qt 5.9.1 都是正确的。但是当我在 Ubuntu 上构建应用程序时,它会正确显示 DotDot,并且 QFileSystemModel::filter() 完全可以根据它的参数工作。我可以让它在 Windows 7 上运行还是它是一个错误?
这是我的代码的简化示例:
QTableView *tableView = new QTableView;
QFileSystemModel *fsModel = new QFileSystemModel;
fsModel->setRootPath(QDir::rootPath());
fsModel->setFilter(QDir::AllEntries | QDir::NoDot);
tableView->setModel(fsModel);
QObject::connect(tableView, &QTableView::doubleClicked, tableView, &QTableView::setRootIndex);
tableView->show();
【问题讨论】:
-
或许,从发布一些代码开始会是个好主意;)
-
哦,抱歉:) 我已在原始问题中添加了代码。
标签: qt qtableview qfilesystemmodel