【发布时间】:2025-12-16 13:45:02
【问题描述】:
我已经有一个 QTreeView,它有一个自己的模型和一个能够在此 QTreeView 的一列中显示 QComboBox 的委托。
现在取决于树中显示的数据,QComboBox 必须仅对某些单元格启用和激活,而不是为整个列启用和激活。我已经发现,当委托的函数 createEditor() 返回 NULL 时,没有显示和处理 QComboBox。但是: createEditor() 没有对模型的引用,所以如果 QCombobox 必须显示或不显示,我不能要求它提供给定的索引。另一方面,我无法将相关信息存储在委托中(因为它是通用的,并且这样的解决方案会违反视图和数据之间的分离恕我直言)。
那么:我如何从 createEditor() 中访问模型,或者我必须为我的 QTreeView 的某些单元格动态隐藏委托的 QComboBox?
谢谢!
【问题讨论】:
标签: qt delegates qtreeview qcombobox model-view