QStandardItemEditorCreator Class

template <typename T> class QStandardItemEditorCreator

Die Klasse QStandardItemEditorCreator bietet die Möglichkeit, Widgets zu registrieren, ohne die Unterklasse QItemEditorCreatorBase zu benötigen. Mehr...

Kopfzeile: #include <QStandardItemEditorCreator>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Vererbungen: QItemEditorCreatorBase

Öffentliche Funktionen

Reimplementierte öffentliche Funktionen

virtual QWidget *createWidget(QWidget *parent) const override
virtual QByteArray valuePropertyName() const override

Detaillierte Beschreibung

Diese Komfortvorlagenklasse ermöglicht es, Widgets zu registrieren, ohne QItemEditorCreatorBase unterzuordnen.

Beispiel:

QItemEditorFactory *editorFactory = new QItemEditorFactory;
QItemEditorCreatorBase *creator = new QStandardItemEditorCreator<MyFancyDateTimeEdit>();
editorFactory->registerEditor(QMetaType::QDateTime, creator);

Das Setzen des oben erstellten editorFactory in einem Item-Delegaten über QStyledItemDelegate::setItemEditorFactory() sorgt dafür, dass alle Werte vom Typ QMetaType::QDateTime in MyFancyDateTimeEdit bearbeitet werden.

Der Editor muss eine Benutzereigenschaft bereitstellen, die die Bearbeitungsdaten enthält. Die Eigenschaft wird von QStyledItemDelegateverwendet, um die Daten zu setzen und abzurufen (unter Verwendung des Meta-Objektsystems von Qt). Sie setzen die Benutzereigenschaft mit dem Schlüsselwort USER:

Q_PROPERTY(QColor color READ color WRITE setColor USER true)

Siehe auch QItemEditorCreatorBase, QItemEditorCreator, QItemEditorFactory, und QStyledItemDelegate.

Dokumentation der Mitgliedsfunktionen

QStandardItemEditorCreator::QStandardItemEditorCreator()

Konstruiert ein Editor Creator Objekt.

[override virtual] QWidget *QStandardItemEditorCreator::createWidget(QWidget *parent) const

Reimplements: QItemEditorCreatorBase::createWidget(QWidget *parent) const.

[override virtual] QByteArray QStandardItemEditorCreator::valuePropertyName() const

Reimplements: QItemEditorCreatorBase::valuePropertyName() const.

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.