Sur cette page

QAxObject Class

La classe QAxObject fournit une interface d'QObject s ( ) qui encapsule un objet COM. En savoir plus...

En-tête : #include <qaxobject.h>
CMake : find_package(Qt6 REQUIRED COMPONENTS AxContainer)
target_link_libraries(mytarget PRIVATE Qt6::AxContainer)
qmake : QT += axcontainer
Hérite de :QAxBaseObject et QAxBase
Hérité par :

QAxScriptEngine

Fonctions publiques

QAxObject(QObject *parent = nullptr)
QAxObject(IUnknown *iface, QObject *parent = nullptr)
QAxObject(const QString &c, QObject *parent = nullptr)
virtual ~QAxObject() override
bool doVerb(const QString &verb)

Fonctions protégées réimplémentées

virtual void connectNotify(const QMetaMethod &signal) override

Description détaillée

Un QAxObject peut être instancié en tant qu’objet vide, avec le nom de l’objet COM qu’il doit encapsuler, ou avec un pointeur vers l’interface IUnknown représentant un objet COM existant. Si l’objet COM implémente l’interface IDispatch, les propriétés, méthodes et événements de cet objet deviennent disponibles en tant que propriétés, slots et signaux Qt. La classe de base, QAxBase, fournit une API permettant d’accéder directement à l’objet COM via le pointeur IUnknown.

QAxObject est un QObject et peut être utilisé comme tel ; il peut par exemple être intégré dans une hiérarchie d’objets, recevoir des événements et être connecté à des signaux et des slots.

QAxObject hérite également de la plupart de ses fonctionnalités liées à ActiveX de ` QAxBase`, notamment ` dynamicCall()` et ` querySubObject()`.

Avertissement : vous pouvez créer une sous-classe de QAxObject, mais vous ne pouvez pas utiliser la macro Q_OBJECT dans cette sous-classe (le fichier moc généré ne se compilera pas) ; vous ne pouvez donc pas ajouter d’autres signaux, slots ou propriétés. Cette limitation est due aux informations de méta-objet générées lors de l’exécution. Pour contourner ce problème, agrégez l’objet QAxObject en tant que membre de la sous-classe QObject.

Voir également QAxBase, QAxWidget, QAxScript et ActiveQt Framework.

Documentation des fonctions membres

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

Crée un objet COM vide et transmet la méthode ` parent ` au constructeur ` QObject `. Pour initialiser l'objet, appelez la méthode `setControl()`.

Voir également setControl().

[explicit] QAxObject::QAxObject(IUnknown *iface, QObject *parent = nullptr)

Crée un objet QAxObject qui encapsule l'objet COM référencé par iface. La propriété parent est transmise au constructeur QObject.

[explicit] QAxObject::QAxObject(const QString &c, QObject *parent = nullptr)

Crée un objet QAxObject qui encapsule l'objet COM c. La méthode parent est transmise au constructeur QObject.

Voir également setControl().

[override virtual noexcept] QAxObject::~QAxObject()

Libère l'objet COM et détruit l'QAxObject, en libérant toutes les ressources allouées.

[override virtual protected] void QAxObject::connectNotify(const QMetaMethod &signal)

Réimplémente : QObject::connectNotify(const QMetaMethod &signal).

bool QAxObject::doVerb(const QString &verb)

Demande à l'objet COM d'effectuer l'action verb. Les verbes possibles sont renvoyés par la fonction verbs().

La fonction renvoie « true » si l'objet a pu effectuer l'action, sinon elle renvoie « false ».

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