如何在 QItemDelegate 的 Paint() 函数中确定该项目是否被选中?
-
19-09-2019 - |
题
我正在使用 QItemDelegate 制作表格。我使用 Paint(..) 方法来绘制委托项目,使其在退出编辑模式时看起来相同,但我还需要在选择或未选择项目时以不同的方式绘制项目,并且在这些事件期间也会调用 Paint 方法。我的问题是我怎么知道什么时候画哪个?
谢谢。
解决方案
这 QItemDelegate.paint
方法接受一个 QStyleOptionViewItem
作为参数,继承自 QStyleOption
. QStyleOption
有一个名为的成员变量 state
类型的 QStyle::State
. 。状态的可能位标志之一是 QStyle::State_Selected
, ,这就是您想要测试的内容。
不隶属于 StackOverflow