Sur cette page

QIconEnginePlugin Class

La classe `QIconEnginePlugin` fournit une base abstraite pour les plugins personnalisés d'QIconEngine. En savoir plus...

En-tête : #include <QIconEnginePlugin>
CMake : find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake : QT += gui
Hérite de : QObject

Fonctions publiques

QIconEnginePlugin(QObject *parent = nullptr)
virtual ~QIconEnginePlugin()
virtual QIconEngine *create(const QString &filename = QString()) = 0

Description détaillée

Le plugin du moteur d'icônes est une interface de plugin simple qui facilite la création de moteurs d'icônes personnalisés pouvant être chargés dynamiquement dans les applications via QIcon. QIcon utilise le suffixe du nom du fichier ou de la ressource pour déterminer quel moteur d'icônes utiliser.

Pour écrire un plugin de moteur d’icônes, il suffit de créer une sous-classe de cette classe de base, de réimplémenter la fonction virtuelle pure ` create()` et d’exporter la classe à l’aide de la macro ` Q_PLUGIN_METADATA()`.

Les métadonnées JSON doivent contenir une liste des clés de moteur d’icônes prises en charge par ce plugin. Les clés correspondent au suffixe du nom du fichier ou de la ressource utilisé lors de la création du plugin. Les clés ne sont pas sensibles à la casse.

{ "Keys": [ "myiconengine" ] }

Voir également Comment créer des plugins Qt.

Documentation sur les fonctions membres

QIconEnginePlugin::QIconEnginePlugin(QObject *parent = nullptr)

Crée un plugin de moteur d'icônes avec l'parent. Celui-ci est appelé automatiquement par le chargeur de plugins.

[virtual noexcept] QIconEnginePlugin::~QIconEnginePlugin()

Supprime le plugin du moteur d'icônes.

Vous n'avez jamais besoin d'appeler cette fonction explicitement. Qt détruit automatiquement un plugin lorsqu'il n'est plus utilisé.

[pure virtual] QIconEngine *QIconEnginePlugin::create(const QString &filename = QString())

Crée et renvoie un objet ` QIconEngine ` correspondant à l'icône dont l'filename est indiquée.

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