QStandardItemEditorCreator 类

template <typename T> class QStandardItemEditorCreator

QStandardItemEditorCreator 类提供在不需子类化 QItemEditorCreatorBase 的情况下注册小部件的功能。更多...

头文件 #include <QStandardItemEditorCreator>
CMakefind_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmakeQT += widgets
继承 QItemEditorCreatorBase

公共函数

重新实现的公共函数

virtual QWidget *createWidget(QWidget *parent) const override
virtual QByteArrayvaluePropertyName() const override

详细描述

这个便利的模板类使得在不需子类化 QItemEditorCreatorBase 的情况下注册小部件成为可能。

示例

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

通过 QStyledItemDelegate::setItemEditorFactory() 在项目代理中设置上面创建的 editorFactory 确保所有类型为 QMetaType::QDateTime 的值都将通过 MyFancyDateTimeEdit 进行编辑。

编辑器必须提供一个包含编辑数据的用户属性。这个属性由 QStyledItemDelegate 使用(利用 Qt 的 元对象系统)来设置和检索数据。您可以使用 USER 关键字设置用户属性

Q_PROPERTY(QColor color READ color WRITE setColor USER true)

另见 QItemEditorCreatorBaseQItemEditorCreatorQItemEditorFactoryQStyledItemDelegate

成员函数文档

QStandardItemEditorCreator::QStandardItemEditorCreator()

构建一个编辑器创建对象。

[覆盖虚函数] QWidget *QStandardItemEditorCreator::createWidget(QWidget *parent) const

重实现了: QItemEditorCreatorBase::createWidget(QWidget *parent) const

[覆盖虚函数] QByteArray QStandardItemEditorCreator::valuePropertyName() const

重实现了: QItemEditorCreatorBase::valuePropertyName() const

© 2024 The Qt Company Ltd。本编译的文档贡献了各自的版权。本文档的提供遵循由自由软件基金会发布的GNU自由文档许可协议版本1.3的条款。Qt及其相关标志是芬兰及/或世界其他地区的The Qt Company Ltd.的商标。所有其他商标均为各自所有者的财产。