QDBusVirtualObject Class
QDBusVirtualObject 类用于通过一个类处理多个 DBus 路径。更多内容...
| 头文件: | #include <QDBusVirtualObject> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS DBus) target_link_libraries(mytarget PRIVATE Qt6::DBus) |
| qmake: | QT += dbus |
| 继承自: | QObject |
公共函数
| QDBusVirtualObject(QObject *parent = nullptr) | |
| virtual | ~QDBusVirtualObject() |
| virtual bool | handleMessage(const QDBusMessage &message, const QDBusConnection &connection) = 0 |
| virtual QString | introspect(const QString &path) const = 0 |
成员函数文档
[explicit] QDBusVirtualObject::QDBusVirtualObject(QObject *parent = nullptr)
使用parent 构建一个 QDBusVirtualObject。
[virtual noexcept] QDBusVirtualObject::~QDBusVirtualObject()
销毁该对象,并删除其所有子对象。
[pure virtual] bool QDBusVirtualObject::handleMessage(const QDBusMessage &message, const QDBusConnection &connection)
当指定了 SubPath 选项时,该函数需要处理发送到虚拟对象路径的所有消息。服务、路径、接口和方法均属于message 。参数connection 是连接句柄。处理完消息后必须返回true ,否则应返回false (这将触发 DBus 错误消息)。
[pure virtual] QString QDBusVirtualObject::introspect(const QString &path) const
该函数需要处理path 上虚拟对象的内省操作。它必须返回以下格式的 XML:
<interface name="org.qtproject.QtDBus.MyObject" >
<property access="readwrite" type="i" name="prop1" />
</interface>如果传入了 SubPath 选项,则此内省操作必须包含所有子节点。否则,QDBus 会自行处理子节点的内省操作。
© 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.