Класс QAxObject
Класс QAxObject предоставляет QObject, который оборачивает объект COM. Подробнее...
| Заголовок: | #include <QAxObject> |
| CMake: | find_package(Qt6 COMPONENTS AxContainer REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::AxContainer) |
| qmake: | QT += axcontainer |
| Наследуется от: | QAxBaseObject и QAxBase |
| Наследует: |
Открытые функции
| QAxObject(IUnknown *iface, QObject *parent = nullptr) | |
| QAxObject(const QString &c, QObject *parent = nullptr) | |
| QAxObject(QObject *parent = nullptr) | |
| virtual | ~QAxObject() override |
| bool | doVerb(const QString &verb) |
Переопределенные защищенные функции
| virtual void | connectNotify(const QMetaMethod &signal) override |
Подробное описание
QAxObject может быть создан как пустой объект, с именем объекта COM, который он должен оборачивать, или с указателем на IUnknown, представляющий существующий объект COM. Если объект COM реализует интерфейс IDispatch, свойства, методы и события этого объекта станут доступны как свойства, слоты и сигналы Qt. Базовый класс QAxBase предоставляет API для прямого доступа к объекту COM через указатель IUnknown.
QAxObject является QObject и может использоваться как таковой, например, он может быть организован в иерархии объектов, получать события и подключаться к сигналам и слотам.
QAxObject также наследует большую часть своей функциональности, связанной с ActiveX, от QAxBase, в частности, dynamicCall() и querySubObject().
Предупреждение: Вы можете наследовать от QAxObject, но не можете использовать макрос Q_OBJECT в подклассе (сгенерированный moc-файл не будет компилироваться), поэтому вы не можете добавлять дополнительные сигналы, слоты или свойства. Это ограничение вызвано метаобъектной информацией, генерируемой во время выполнения. Чтобы обойти эту проблему, агрегируйте QAxObject как член подкласса QObject.
См. также QAxBase, QAxWidget, QAxScript и Фреймворк ActiveQt.
Документация по членам-функциям
QAxObject::QAxObject(IUnknown *iface, QObject *parent = nullptr)
Создает QAxObject, который оборачивает объект COM, на который ссылается iface. parent передается конструктору QObject.
QAxObject::QAxObject(const QString &c, QObject *parent = nullptr)
Создает QAxObject, который оборачивает объект COM c. parent передается конструктору QObject.
См. также setControl().
QAxObject::QAxObject(QObject *parent = nullptr)
Создает пустой объект COM и передает parent конструктору QObject. Для инициализации объекта вызовите setControl().
См. также setControl().
[override virtual] QAxObject::~QAxObject()
Освобождает объект COM и уничтожает QAxObject, очищая все выделенные ресурсы.
[override virtual protected] void QAxObject::connectNotify(const QMetaMethod &signal)
Переопределяет: QObject::connectNotify(const QMetaMethod &signal).
bool QAxObject::doVerb(const QString &verb)
Запрашивает от объекта COM выполнение действия verb. Возможные действия возвращаются функцией verbs().
Функция возвращает true, если действие было выполнено, иначе возвращает false.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qaxobject.html