В чем разница между QItemDelegate и QStyledItemDelegate?
оба класса предоставляют средства отображения и редактирования элементов данных из модели. QStyledItemDelegate
новее и документация Qt о QItemDelegate
гласит :
обратите внимание, что QStyledItemDelegate взял на себя работу по рисованию Qt представления элементов. Мы рекомендуем использовать QStyledItemDelegate при создании новый делегат.
Я смущен, в чем разница между этими двумя и почему QStyledItemDelegate
предпочтительнее QItemDelegate
!
1 ответов
как говорится в QStyledItemDelegate
документация, разница в том, что QStyledItemDelegate
использует текущий стиль для рисования своих элементов.
эти два класса являются независимыми альтернативами живописи и предоставление редакторов для элементов в представлениях. Разница между ними это
QStyledItemDelegate
использует текущий стиль для рисования своих элементов. Мы поэтому рекомендуем использоватьQStyledItemDelegate
как базовый класс, когда реализация пользовательских делегатов или при работе со стилем Qt простыни. Код, необходимый для любого класса, должен быть равен, если пользователь делегат должен использовать стиль для рисования.
обратите внимание, что этот ответ основан на комментариях Юлиу и Алекса