这两个类都为模型中的数据项提供显示和编辑功能。 QStyledItemDelegate
较新,有关QItemDelegate
的Qt文档说明:
请注意,QStyledItemDelegate已经接管了绘制Qt的工作 项目视图。我们建议在创建时使用QStyledItemDelegate 新代表。
我很困惑这两者之间的区别是什么QStyledItemDelegate
比QItemDelegate
更受欢迎!
答案 0 :(得分:5)
如QStyledItemDelegate
documentation中所述,区别在于QStyledItemDelegate
使用当前样式绘制其项目。
这两个类是绘画的独立替代品 为视图中的项目提供编辑器。他们之间的区别是
QStyledItemDelegate
使用当前样式绘制其项目。我们 因此建议使用QStyledItemDelegate
作为基类 实现自定义委托或使用Qt样式表时。 除非自定义,否则任一类所需的代码应相等 委托需要使用样式进行绘制。
请注意,此答案基于Iuliu和Alex的评论