The QAxObject 类提供 QObject 包裹 COM (组件对象模型) 对象。 更多...
头: | #include <QAxObject> |
qmake: | QT += axcontainer |
继承: | QObject and QAxBase |
继承者: | QAxScriptEngine |
QAxObject (QObject * parent = Q_NULLPTR) | |
QAxObject (const QString & c , QObject * parent = Q_NULLPTR) | |
QAxObject (IUnknown * iface , QObject * parent = Q_NULLPTR) | |
~QAxObject () | |
bool | doVerb (const QString & verb ) |
virtual void | connectNotify (const QMetaMethod & signal ) |
The QAxObject 类提供 QObject 包裹 COM (组件对象模型) 对象。
A
QAxObject
可以被实例化成空对象,具有应包裹的 COM 对象名,或具有指向表示现有 COM 对象的 IUnknown 指针。若 COM 对象有实现
IDispatch
接口,该对象的特性、方法和事件将变为可用 Qt 特性、槽及信号。基类
QAxBase
提供能透过 IUnknown 指针直接访问 COM 对象的 API。
QAxObject 是 QObject 且可以这样使用,如:可以按对象层次结构、接收事件及连接信号/槽组织它。
QAxObject 还继承了其 ActiveX 相关的大部分功能从 QAxBase ,尤其 dynamicCall () 和 querySubObject ().
警告: 可以子类化 QAxObject ,但无法使用 Q_OBJECT 宏在子类中 (不会编译生成的 moc 文件),所以,无法进一步添加信号、槽或特性。此局限性是由在运行时,生成的元对象信息造成的。要解决此问题,聚合 QAxObject 作为成员对于 QObject 子类。
另请参阅 QAxBase , QAxWidget , QAxScript ,和 ActiveQt 框架 .
创建空 COM 对象并传播 parent 到 QObject 构造函数。以初始化对象,调用 setControl .
创建 QAxObject 包裹 COM 对象 c . parent 被传播给 QObject 构造函数。
另请参阅 setControl ().
创建 QAxObject 包裹引用 COM 对象通过 iface . parent 被传播给 QObject 构造函数。
释放 COM 对象并销毁 QAxObject ,清理所有分配资源。
[virtual protected]
void
QAxObject::
connectNotify
(const
QMetaMethod
&
signal
)
重实现自 QObject::connectNotify ().
请求 COM 对象以履行动作 verb 。可能的 verb 的返回是通过 verbs ().
函数返回 true 若对象能履行动作,否则返回 false。
该函数在 Qt 4.1 引入。