Класс 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.15/qaxobject.html