Auf dieser Seite

QDBusVirtualObject Class

Die Klasse „QDBusVirtualObject“ dient dazu, mehrere DBus-Pfade mit einer einzigen Klasse zu verwalten. Mehr...

Header: #include <QDBusVirtualObject>
CMake: find_package(Qt6 REQUIRED COMPONENTS DBus)
target_link_libraries(mytarget PRIVATE Qt6::DBus)
qmake: QT += dbus
Erbt von: QObject

Öffentliche Funktionen

QDBusVirtualObject(QObject *parent = nullptr)
virtual ~QDBusVirtualObject()
virtual bool handleMessage(const QDBusMessage &message, const QDBusConnection &connection) = 0
virtual QString introspect(const QString &path) const = 0

Ausführliche Beschreibung

Dokumentation der Mitgliedsfunktionen

[explicit] QDBusVirtualObject::QDBusVirtualObject(QObject *parent = nullptr)

Erstellt ein `QDBusVirtualObject` mit ` parent`.

[virtual noexcept] QDBusVirtualObject::~QDBusVirtualObject()

Löscht das Objekt und entfernt dabei alle seine untergeordneten Objekte.

[pure virtual] bool QDBusVirtualObject::handleMessage(const QDBusMessage &message, const QDBusConnection &connection)

Diese Funktion muss alle Nachrichten an den Pfad des virtuellen Objekts verarbeiten, wenn die Option „SubPath“ angegeben ist. Der Dienst, der Pfad, die Schnittstelle und die Methoden sind alle Teil von „ message “. Der Parameter „ connection “ ist das Verbindungs-Handle. Muss „ true “ zurückgeben, wenn die Nachricht verarbeitet wurde, andernfalls „ false “ (dies löst eine DBus-Fehlermeldung aus).

[pure virtual] QString QDBusVirtualObject::introspect(const QString &path) const

Diese Funktion muss die Introspektion des virtuellen Objekts unter path durchführen. Sie muss XML in folgender Form zurückgeben:

<interface name="org.qtproject.QtDBus.MyObject" >
    <property access="readwrite" type="i" name="prop1" />
</interface>

Wenn Sie die Option „SubPath“ übergeben, muss diese Introspektion alle untergeordneten Knoten einschließen. Andernfalls übernimmt „ QDBus “ die Introspektion der untergeordneten Knoten.

© 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.