如何从 QStyle 获取 QTreeView 的标识宽度

Posted

技术标签:

【中文标题】如何从 QStyle 获取 QTreeView 的标识宽度【英文标题】:How to get identation width of QTreeView from QStyle 【发布时间】:2019-09-22 05:28:01 【问题描述】:

我有预先存在的代码,它具有类似外观的树视图,但实际上并未使用 QTreeView(使用带有自定义绘制的 QListWidget)。

我的任务是在父对象和子对象之间添加缩进,但我无法找到如何从 QStyle 获取样式默认缩进宽度。该程序必须在各种操作系统上运行并允许使用自定义样式表。所以从 QStyle 获得这个选项很重要。

问候。

【问题讨论】:

【参考方案1】:

在 qt 源码中找到了这个

必须使用 QStyle::pixelMetric 和 QStyle::PM_TreeViewIndentation 在你的小部件的过程中

ident = style()->pixelMetric(QStyle::PM_TreeViewIndentation)

【讨论】:

所提供的答案被标记为低质量帖子以供审核。以下是How do I write a good answer? 的一些指南。提供的这个答案可能是正确的,但它可以从解释中受益。仅代码答案不被视为“好”答案。来自review。

以上是关于如何从 QStyle 获取 QTreeView 的标识宽度的主要内容,如果未能解决你的问题,请参考以下文章

从 QTreeView 中的 QModelIndex 获取平面行索引

如何获取 QTreeView 的大小/深度/分支?

如何使用 QStyle 和指定的 QSS 绘制控件?

如何在 QTreeWidget/QTreeView 中获取行高

在 PySide 的 QTreeView 中更改时如何获取项目的先前名称

如何使用 QAbstractItemModel 从 QTreeView 中删除行?