QQmlExtensionPlugin Class
Die Klasse „QQmlExtensionPlugin“ bietet eine abstrakte Basis für benutzerdefinierte QML-Erweiterungs-Plugins mit benutzerdefinierten Funktionen zur Typregistrierung. Mehr...
| Header: | #include <QQmlExtensionPlugin> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Qml) target_link_libraries(mytarget PRIVATE Qt6::Qml) |
| qmake: | QT += qml |
| Erbt von: | QObject |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- Veraltete Elemente
- QQmlExtensionPlugin ist Teil der Plugin-Klassen.
Öffentliche Funktionen
(since 6.0) virtual void | unregisterTypes() |
Neu implementierte öffentliche Funktionen
| virtual void | initializeEngine(QQmlEngine *engine, const char *uri) override |
| virtual void | registerTypes(const char *uri) override = 0 |
Ausführliche Beschreibung
Hinweis: Wenn Sie ein Plugin manuell schreiben müssen (was selten vorkommt), sollten Sie immer QQmlEngineExtensionPlugin verwenden. QQmlExtensionPlugin stellt lediglich zusätzlich die Funktionen „ registerTypes()“ und „ unregisterTypes()“ bereit. Sie sollten diese nicht verwenden, sondern Ihre Typen stattdessen mit „ QML_ELEMENT “ und ähnlichen Funktionen deklarieren und die Registrierung dem Build-System überlassen.
Dokumentation zu Mitgliedsfunktionen
[override virtual] void QQmlExtensionPlugin::initializeEngine(QQmlEngine *engine, const char *uri)
Initialisiert die Erweiterung aus dem „ uri “ mithilfe von „ engine “. Hier könnte ein Anwendungs-Plugin beispielsweise bestimmte Daten oder Objekte für QML als Kontexteigenschaften im Root-Kontext der Engine bereitstellen.
[override pure virtual] void QQmlExtensionPlugin::registerTypes(const char *uri)
Registriert die QML-Typen im angegebenen „ uri “. Unterklassen sollten dies implementieren, um für alle Typen, die vom Erweiterungs-Plugin bereitgestellt werden, die Methode „ qmlRegisterType()“ aufzurufen.
Die „ uri “ ist eine Kennung für das Plugin, die von der QML-Engine basierend auf dem Namen und dem Pfad der Plugin-Bibliothek der Erweiterung generiert wird.
[virtual, since 6.0] void QQmlExtensionPlugin::unregisterTypes()
Überschreiben Sie diese Methode, um Typen zu deaktivieren, die manuell unter „ registerTypes “ registriert wurden.
Diese Funktion wurde in Qt 6.0 eingeführt.
© 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.