|
|
(23 intermediate revisions by 2 users not shown) |
Line 1: |
Line 1: |
| <languages />
| | Simple edit testing incapsula |
| __TOC__
| |
|
| |
|
| <span id="Section_Title_in_English"></span>==<translate>Section title in English</translate>==
| | http://www.kde.org |
| Most pages can be ported from the old site as-is and are marked with "done, needs review". Links are noted.
| |
| | |
| Some are already included in the testing area, which can be found on http://www-devel.kde.org/community/ (starting at a subdir as the main page is a different matter).
| |
| | |
| To make it easy all i would need is a plain txt file, html tags can be applied afterwards.
| |
| | |
| * One
| |
| * Two
| |
| ** Two point one
| |
| * Three
| |
| | |
| <translate>
| |
| === Der Aufruf einer D-Bus Methode ===
| |
| Eine [http://doc.qt.nokia.com/latest/QDBusMessage.html QDBusMessage] kann direkt mit der statischen Methode [http://doc.qt.nokia.com/latest/QDBusMessage.html QDBusMessage]<tt>::createMethodCall( const QString & service, const QString & path, const QString & interface, const QString & method )</tt> benutzt werden, um Methoden in D-Bus Diensten aufzurufen. Der Rückgabewert ist ein [http://doc.qt.nokia.com/latest/QDBusMessage.html QDBusMessage] Objekt, welches dann für den eigentlichen Aufruf benutzt wird.
| |
| | |
| Der <tt>interface</tt> Parameter ist optional und nur erforderlich, wenn die Methode nicht eindeutig identifizierbar im, mit dem Pfad assoziierten, Objekt ist.Dies kann passieren, wenn das Objekt mehrere Schnittstellen implementiert, die Methoden, mit den gleichen Namen haben. In solchen (seltenen) Fällen, gibt es keine Garantie darüber, welche Methode tatsächlich aufgerufen wird, wenn man die gewünschte Schnittstelle nicht explizit definiert. Allerdings kann man in der Regel einfach eine leere Zeichenfolge (z.B. ""), als Argument für <tt>interface</tt> übergeben.
| |
| | |
| Als Beispiel für den Zugriff auf einen Dienst der (fiktiven) <tt>ping</tt>-Methode für das {{path|/network}} object in der <tt>org.foo.bar</tt>, könnte man dies zu tun:
| |
| | |
| <code cppqt>
| |
| QDBusMessage m = QDBusMessage::createMethodCall("org.foo.bar",
| |
| "/network",
| |
| "",
| |
| "ping");
| |
| bool queued = QDBusConnection::sessionBus().send(m);
| |
| </code>
| |
| | |
| In Zeile 5 im obigen Beispiel haben wir die Nachrichten-Warteschlange für das Senden über den aktuelle Session-Bus. Der Rückgabewert vom Typ <tt>bool</tt> lässt uns wissen, ob das Einstellen in die Warteschlange erfolgreich war, oder nicht.
| |
| | |
| Dies lässt noch zwei Fragen offen:
| |
| * Wie werden die Parameter für einen Methodenaufruf korrekt gesetzt?
| |
| * Wie kommt man an die Rückmeldung im Falle der D-Bus-Methoden, die einen Rückgabewert haben?
| |
| </translate>
| |