QGenericPlugin Class

Die Klasse QGenericPlugin ist eine abstrakte Basisklasse für Plugins. Mehr...

Kopfzeile: #include <QGenericPlugin>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
Vererbt: QObject

Öffentliche Funktionen

QGenericPlugin(QObject *parent = nullptr)
virtual ~QGenericPlugin()
virtual QObject *create(const QString &key, const QString &specification) = 0

Detaillierte Beschreibung

Ein Maus-Plugin kann durch Unterklassifizierung von QGenericPlugin und Reimplementierung der rein virtuellen Funktion create() erstellt werden. Durch den Export der abgeleiteten Klasse unter Verwendung des Q_PLUGIN_METADATA() Makros, wird die Standardimplementierung der QGenericPluginFactory Klasse das Plugin automatisch erkennen und den Treiber zur Laufzeit in die Serveranwendung laden. Siehe Wie man Qt Plugins erstellt für Details.

Die json-Metadaten-Datei sollte eine Liste der von diesem Plugin unterstützten Schlüssel enthalten.

Siehe auch QGenericPluginFactory.

Dokumentation der Mitgliedsfunktionen

[explicit] QGenericPlugin::QGenericPlugin(QObject *parent = nullptr)

Konstruiert ein Plugin mit dem angegebenen parent.

Beachten Sie, dass dieser Konstruktor automatisch vom moc-generierten Code aufgerufen wird, der das Plugin exportiert, so dass er nicht explizit aufgerufen werden muss.

[virtual noexcept] QGenericPlugin::~QGenericPlugin()

Zerstört das Plugin.

Beachten Sie, dass Qt ein Plugin automatisch zerstört, wenn es nicht mehr verwendet wird, so dass es nicht notwendig ist, den Destruktor explizit aufzurufen.

[pure virtual] QObject *QGenericPlugin::create(const QString &key, const QString &specification)

Implementieren Sie diese Funktion, um einen Treiber zu erstellen, der dem durch die angegebenen Parameter key und specification spezifizierten Typ entspricht. Beachten Sie, dass bei den Schlüsseln Groß- und Kleinschreibung nicht beachtet wird.

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