【发布时间】:2015-09-24 13:49:04
【问题描述】:
当我在 Qt5 中处理与文件管理器非常相似的东西时,我尝试实现一个非常基本的树视图,只显示目录名称而没有任何其他信息。但是,(似乎)QTreeView 不允许我决定要显示哪些列。
这是我所拥有的:
// ...
QString m_path = "C:/Users/mine";
dirModel = new QFileSystemModel(this);
dirModel->setFilter(QDir::NoDotAndDotDot | QDir::AllDirs);
dirModel->setRootPath(m_path);
ui->treeView->setModel(dirModel);
// ...
现在我的QTreeView 显示了更多带有名称的信息,例如尺寸等;然而,这不是我们想要的行为。
将headerVisible 设置为false 会删除我的QTreeView 的“标题”,这没问题,但我怎样才能完全删除其他列?我试过了:
ui->treeView->hideColumn(1);
只是为了测试它是否有效,但它并没有改变任何事情。
【问题讨论】:
-
hideColumn做你想做的事。您确定在模型初始化后调用它吗? doc.qt.io/qt-5/qtreeview.html#hideColumn -
我尝试在
setModel之后使用它。
标签: c++ qt qt5 qtreeview qfilesystemmodel