- Qt 6.9
- Qt Widgets
- C++ Classes
- QItemEditorCreator
- Qt 6.9.1 Reference Documentation

# QItemEditorCreator Class

template <typename T> class QItemEditorCreator

The QItemEditorCreator class makes it possible to create item editor creator bases without subclassing QItemEditorCreatorBase. More...

Header: | `#include <QItemEditorCreator>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS Widgets)` `target_link_libraries(mytarget PRIVATE Qt6::Widgets)`
qmake: | `QT += widgets`
Inherits: | QItemEditorCreatorBase

- List of all members, including inherited members

## Public Functions

| QItemEditorCreator(const QByteArray &valuePropertyName)

## Reimplemented Public Functions

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

## Detailed Description

QItemEditorCreator is a convenience template class. It uses the template class to create editors for QItemEditorFactory. This way, it is not necessary to subclass QItemEditorCreatorBase.

     QItemEditorCreator<MyEditor> *itemCreator =
         new QItemEditorCreator<MyEditor>("myProperty");

     QItemEditorFactory *factory = new QItemEditorFactory;

The constructor takes the name of the property that contains the editing data. QStyledItemDelegate can then access the property by name when it sets and retrieves editing data. Only use this class if your editor does not define a user property (using the USER keyword in the Q_PROPERTY macro). If the widget has a user property, you should use QStandardItemEditorCreator instead.

See also QItemEditorCreatorBase, QStandardItemEditorCreator, and QItemEditorFactory.

## Member Function Documentation

### `[explicit]` QItemEditorCreator::QItemEditorCreator(const QByteArray &valuePropertyName)

Constructs an editor creator object using valuePropertyName as the name of the property to be used for editing. The property name is used by QStyledItemDelegate when setting and getting editor data.

Note that the valuePropertyName is only used if the editor widget does not have a user property defined.

### `[override virtual]` QWidget *QItemEditorCreator::createWidget(QWidget *parent) const

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

### `[override virtual]` QByteArray QItemEditorCreator::valuePropertyName() const

Reimplements: QItemEditorCreatorBase::valuePropertyName() const.