Was ist der Unterschied zwischen QItemDelegate und QStyledItemDelegate?

9

Beide Klassen bieten Anzeige- und Bearbeitungsfunktionen für Datenelemente aus einem Modell. QStyledItemDelegate ist neuer und die Qt-Dokumentation über QItemDelegate besagt Folgendes:

  

Beachten Sie, dass QStyledItemDelegate den Auftrag zum Zeichnen von Qt's übernommen hat   Artikelansichten. Wir empfehlen die Verwendung von QStyledItemDelegate beim Erstellen   neue Delegierte.

Ich bin verwirrt, was der Unterschied zwischen den beiden ist und warum QStyledItemDelegate gegenüber QItemDelegate bevorzugt wird!

    
Nejat 05.03.2015, 06:06
quelle

1 Antwort

3
___ tag123c ___ C ++ ist eine universelle Programmiersprache. Es wurde ursprünglich als Erweiterung von C entworfen und behält eine ähnliche Syntax, ist aber jetzt eine komplett andere Sprache. Verwenden Sie dieses Tag für Fragen zu Code, der mit einem C ++ - Compiler kompiliert werden soll. ___ tag123qitemdelegate ___ QItemDelegate ist eine Qt-Klasse, die Anzeige- und Bearbeitungsfunktionen für Datenelemente aus einem Modell bereitstellt. ___ qstnhdr ___ Was ist der Unterschied zwischen QItemDelegate und QStyledItemDelegate? ___ antwort43710826 ___

Wie in der QStyledItemDelegate -Dokumentation erwähnt, besteht der Unterschied darin QStyledItemDelegate verwendet den aktuellen Stil zum Zeichnen seiner Elemente.

  

Diese beiden Klassen sind unabhängige Alternativen zum Malen und   Bereitstellen von Editoren für Elemente in Ansichten. Der Unterschied zwischen ihnen ist   Das QStyledItemDelegate verwendet den aktuellen Stil, um seine Elemente zu malen. Wir   empfehlen Sie daher, QStyledItemDelegate als Basisklasse zu verwenden   Implementieren von benutzerdefinierten Delegaten oder beim Arbeiten mit Qt-Stylesheets.   Der Code, der für jede Klasse erforderlich ist, sollte gleich sein, es sei denn, die benutzerdefinierte Klasse   Delegate muss den Stil zum Zeichnen verwenden.

Beachten Sie, dass diese Antwort auf den Kommentaren von Iuliu und Alex basiert

    
___ tag123qstyleditemdelegate ___ Die QStyledItemDelegate-Klasse, Teil des Qt-Frameworks, bietet Anzeige- und Bearbeitungsfunktionen für Datenelemente aus einem Modell. ___ qstntxt ___

Beide Klassen bieten Anzeige- und Bearbeitungsfunktionen für Datenelemente aus einem Modell. %code% ist neuer und die Qt-Dokumentation über %code% besagt Folgendes:

  

Beachten Sie, dass QStyledItemDelegate den Auftrag zum Zeichnen von Qt's übernommen hat   Artikelansichten. Wir empfehlen die Verwendung von QStyledItemDelegate beim Erstellen   neue Delegierte.

Ich bin verwirrt, was der Unterschied zwischen den beiden ist und warum %code% gegenüber %code% bevorzugt wird!

    
___ tag123qt ___ Qt ist ein plattformübergreifendes Anwendungsentwicklungs-Framework, das häufig für die Entwicklung von Anwendungssoftware verwendet wird, die auf verschiedenen Software- und Hardwareplattformen ohne oder mit nur geringer Änderung der zugrundeliegenden Codebasis ausgeführt werden kann. Qt ist sowohl mit kommerziellen als auch mit Open-Source-Lizenzen verfügbar. ___
m7913d 30.04.2017, 20:08
quelle