Класс QAxObject
Класс QAxObject предоставляет объект QObject, который оборачивает COM-объект. Подробнее...
| Заголовок: | #include <QAxObject> |
| qmake: | QT += axcontainer |
| Наследует: | QObject и 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.
[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.
Эта функция была введена в Qt 4.1.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qaxobject.html