QQmlExtensionPlugin Class

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

Header: #include <QQmlExtensionPlugin>
CMake: find_package(Qt6 REQUIRED COMPONENTS Qml)
target_link_libraries(mytarget PRIVATE Qt6::Qml)
qmake: QT += qml
Inherits: 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 や friend を使用して型を宣言し、ビルドシステムに登録を任せるようにしてください。

メンバ関数の説明

[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 で導入されました。

©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。