[英]What is the difference between QItemDelegate and QStyledItemDelegate?
这两个类都为模型中的数据项提供显示和编辑功能。 QStyledItemDelegate
较新,关于QItemDelegate
的 Qt 文档指出:
请注意, QStyledItemDelegate 已经接管了绘制 Qt 项目视图的工作。 我们建议在创建新委托时使用 QStyledItemDelegate。
我很困惑这两者之间有什么区别,以及为什么QStyledItemDelegate
比QItemDelegate
更QItemDelegate
!
正如QStyledItemDelegate
文档中提到的,不同之处在于QStyledItemDelegate
使用当前样式来绘制其项目。
这两个类是绘画和为视图中的项目提供编辑器的独立替代品。 它们之间的区别在于
QStyledItemDelegate
使用当前样式来绘制其项目。 因此,我们建议在实现自定义委托或使用 Qt 样式表时使用QStyledItemDelegate
作为基类。 除非自定义委托需要使用样式进行绘制,否则任一类所需的代码应该相同。
请注意,此答案基于 Iuliu 和 Alex 的评论
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.