このページでは

QQmlExtensionPlugin Class

QQmlExtensionPlugin クラスは、カスタム型の登録関数を持つカスタム QML 拡張プラグインのための抽象基底クラスを提供します。詳細...

ヘッダー: #include <QQmlExtensionPlugin>
CMake: find_package(Qt6 REQUIRED COMPONENTS Qml)
target_link_libraries(mytarget PRIVATE Qt6::Qml)
qmake: QT += qml
継承元: QObject

パブリック関数

(since 6.0) virtual void unregisterTypes()

再実装されたパブリック関数

virtual void initializeEngine(QQmlEngine *engine, const char *uri) override
virtual void registerTypes(const char *uri) override = 0

詳細な説明

注: プラグインを手動で記述する必要がある場合 (これは稀ですが)、常に `QQmlEngineExtensionPlugin` を使用してください。`QQmlExtensionPlugin` は、追加として `registerTypes()` および `unregisterTypes()` 関数のみを提供します。これらを使用するのではなく、`QML_ELEMENT ` および関連関数を使用して型を宣言し、ビルドシステムに登録を任せるようにしてください。

メンバ関数のドキュメント

[override virtual] void QQmlExtensionPlugin::initializeEngine(QQmlEngine *engine, const char *uri)

engine を使用して、uri から拡張機能を初期化します。ここでは、例えば、アプリケーションプラグインが、エンジンのルートコンテキスト上のコンテキストプロパティとして、QML に対してデータやオブジェクトを公開することがあります。

[override pure virtual] void QQmlExtensionPlugin::registerTypes(const char *uri)

指定されたuri にQML型を登録します。サブクラスは、このメソッドを実装して、拡張プラグインによって提供されるすべての型に対してqmlRegisterType()を呼び出す必要があります。

uri は、拡張プラグインのライブラリ名とパスに基づいて QML エンジンによって生成される、プラグインの識別子です。

[virtual, since 6.0] void QQmlExtensionPlugin::unregisterTypes()

registerTypes で手動で登録された型の登録を解除するには、このメソッドをオーバーライドしてください。

この関数は Qt 6.0 で導入されました。

© 2026 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.