QAbstractExtensionFactory Class
Die Klasse QAbstractExtensionFactory bietet eine Schnittstelle für Erweiterungsfabriken in Qt Widgets Designer. Mehr...
Kopfzeile: | #include <QAbstractExtensionFactory> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Designer) target_link_libraries(mytarget PRIVATE Qt6::Designer) |
qmake: | QT += designer |
Vererbt von: |
Öffentliche Funktionen
virtual | ~QAbstractExtensionFactory() |
virtual QObject * | extension(QObject *object, const QString &iid) const = 0 |
Detaillierte Beschreibung
QAbstractExtensionFactory ist nicht dafür gedacht, direkt instanziert zu werden; verwenden Sie stattdessen die QExtensionFactory.
In Qt Widgets Designer werden Erweiterungsfabriken verwendet, um benannte Erweiterungen zu suchen und zu erstellen, wenn sie benötigt werden. Aus diesem Grund müssen Sie bei der Implementierung einer benutzerdefinierten Erweiterung auch eine QExtensionFactory erstellen, d.h. eine Klasse, die in der Lage ist, eine Instanz Ihrer Erweiterung zu erstellen, und diese mit Qt Widgets Designer's extension manager registrieren.
Wenn eine Erweiterung benötigt wird, durchläuft Qt Widgets Designer's extension manager alle registrierten Fabriken und ruft QExtensionFactory::createExtension() für jede auf, bis die erste gefunden wird, die in der Lage ist, die gewünschte Erweiterung für das ausgewählte Objekt zu erstellen. Diese Fabrik wird dann eine Instanz der Erweiterung erstellen.
Siehe auch QExtensionFactory und QExtensionManager.
Dokumentation der Mitgliedsfunktionen
[virtual noexcept]
QAbstractExtensionFactory::~QAbstractExtensionFactory()
Zerstört die Erweiterungsfabrik.
[pure virtual]
QObject *QAbstractExtensionFactory::extension(QObject *object, const QString &iid) const
Gibt die durch iid angegebene Erweiterung für die angegebene object zurück.
© 2025 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.