【发布时间】:2019-09-22 00:09:39
【问题描述】:
我想要一个QTreeView 没有左侧的缩进在每个嵌套级别增加。我尝试设置QTreeView::setIndentation(0)。它按照我的意愿删除了缩进,但它也隐藏了树形箭头。
默认行为:
- 带缩进 ✗
- 带箭头✔
setIndentation(0)之后:
- 没有缩进 ✔
- 没有箭头 ✗
期望的行为:
- 没有缩进 ✔
- 带箭头✔
那么我怎样才能达到第三个例子所示的结果呢?有没有标准的方法,或者我将不得不重新实现QTreeView::paintEvent()、QTreeView::drawBranches()等?
【问题讨论】:
-
你需要重新实现它...
-
只是个人意见,但是...我认为您要实现的目标可能会让用户感到非常困惑。在标记为
Desired behavior:的图像中,我如何知道1是Test的子目录还是C:的子目录? -
@G.M.我同意,在这个特定的例子中,它会让用户非常困惑。但是,实际的树结构将具有更简单和静态的嵌套。例如,想象一下属性浏览器中的分组。
标签: qt qt5 qtreeview qtwidgets