QQmlExtensionPlugin 类
QQmlExtensionPlugin 类提供了一种抽象基类,用于具有自定义类型注册函数的自定义 QML 扩展插件。更多...
头文件 | #include <QQmlExtensionPlugin> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Qml) target_link_libraries(mytarget PRIVATE Qt6::Qml) |
qmake | QT += qml |
继承 | QObject |
- 包括继承成员在内的所有成员列表
- QQmlExtensionPlugin 是 插件类 的一部分。
公共函数
(自 6.0) 虚拟 void | unregisterTypes() |
重实现的公共函数
虚拟 void | initializeEngine(QQmlEngine *engine, const char *uri) override |
虚拟 void | registerTypes(const char *uri) override = 0 |
详细描述
注意:如果您需要手动编写插件(这种情况很少见),您应始终使用 QQmlEngineExtensionPlugin。 QQmlExtensionPlugin 只提供了 registerTypes() 和 unregisterTypes() 函数。您不应该使用它们,而应该使用 QML_ELEMENT 和类似功能声明您的类型,让构建系统负责注册。
成员函数文档
[重写虚函数]
void QQmlExtensionPlugin::initializeEngine(QQmlEngine *engine, const char *uri)
使用 uri 和 engine 初始化扩展。例如,应用程序插件可在此处将一些数据或对象公开给 QML,作为根上下文上的上下文属性。
[重写纯虚函数]
void QQmlExtensionPlugin::registerTypes(const char *uri)
在指定的 uri 中注册 QML 类型。子类应实现此方法,调用 qmlRegisterType() 以注册扩展插件提供的所有类型。
uri 是由 QML 引擎生成的插件标识符,基于扩展插件的插件库的名称和路径。
[虚函数,自 6.0]
void QQmlExtensionPlugin::unregisterTypes()
重写此方法以手动注销在 registerTypes 中注册的类型。
此功能自 Qt 6.0 引入。
© 2024 The Qt Company Ltd. 本文档中包含的文档贡献均为各自所有者的版权。本文档提供的内容按照自由软件基金会发布的、由 Free Software Foundation 发布的 GNU 自由文档许可证 1.3 版 的条款进行许可。Qt 和相应标志是 The Qt Company Ltd. 在芬兰以及/或其他国家和地区的商标。所有其他商标均为各自所有者的财产。