Класс QStandardItemEditorCreator
шаблон <typename T> class QStandardItemEditorCreatorКласс QStandardItemEditorCreator предоставляет возможность регистрировать виджеты без необходимости наследования от QItemEditorCreatorBase. Подробнее...
| Заголовок: | #include <QStandardItemEditorCreator> |
| CMake: | find_package(Qt6 COMPONENTS Widgets REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Наследует: | QItemEditorCreatorBase |
Открытые функции
| QStandardItemEditorCreator() |
Переопределённые открытые функции
| виртуальный QWidget * | createWidget(QWidget *parent) const override |
| виртуальный QByteArray | valuePropertyName() const override |
Подробное описание
Этот шаблонный класс-помощник позволяет регистрировать виджеты без наследования от QItemEditorCreatorBase.
Пример:
QItemEditorFactory *editorFactory = new QItemEditorFactory; QItemEditorCreatorBase *creator = new QStandardItemEditorCreator<MyFancyDateTimeEdit>(); editorFactory->registerEditor(QMetaType::QDateTime, creator);
Установка editorFactory выше в делегате элементов через QStyledItemDelegate::setItemEditorFactory() гарантирует, что все значения типа QMetaType::QDateTime будут редактироваться в MyFancyDateTimeEdit.
Редактор должен предоставлять пользовательское свойство, которое будет содержать данные редактирования. Это свойство используется QStyledItemDelegate для установки и извлечения данных (с помощью метаобъектной системы Qt). Вы устанавливаете пользовательское свойство с ключевым словом USER:
Q_PROPERTY(QColor color READ color WRITE setColor USER true)
См. также QItemEditorCreatorBase, QItemEditorCreator, QItemEditorFactory, QStyledItemDelegate и Пример фабрики редактора цвета.
Документация по членам-функциям
QStandardItemEditorCreator::QStandardItemEditorCreator()
Конструирует объект редактора.
[override virtual] QWidget *QStandardItemEditorCreator::createWidget(QWidget *parent) const
Переопределяет: QItemEditorCreatorBase::createWidget(QWidget *parent) const.
[override virtual] QByteArray QStandardItemEditorCreator::valuePropertyName() const
Переопределяет: QItemEditorCreatorBase::valuePropertyName() const.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qstandarditemeditorcreator.html