Qt DBus methodcall

Alles rund um die Programmierung mit Qt
Antworten
OliverD
Beiträge: 6
Registriert: 24. Juni 2008 21:39
Kontaktdaten:

Qt DBus methodcall

Beitrag von OliverD »

Hallo zusammen,

ich haette mal eine Frage bzgl. dem DBus unter Qt.

Ich kann mittlerweile ohne weiteres Methoden aufrufen und dabei auch einen QString uebergeben
Zum Beispiel so:

Code: Alles auswählen

void DBusAdapter::printoutstr(QString str)
{
    // handle method call de.odamm.DBusGames.widget.printout
    QMetaObject::invokeMethod(parent(), "printoutstr", Q_ARG(QString, str));
}
Der entsprechende call sieht so aus:

Code: Alles auswählen

    interface->call("printoutstr", arg);
Nun reicht mir aber ein String nicht aus und ich dachte mir es lassen sich ja auch Listen verschicken. Als fix die Methoden angepasst und ... nix. Leider wird die Empfaengermethode nicht aufgerufen.

Die Methode vom Adapter habe ich so geaendert:

Code: Alles auswählen

void DBusAdapter::printout(QList <QVariant> list)
{
    // handle method call de.odamm.DBusGames.widget.printout
    QMetaObject::invokeMethod(parent(), "printout", Q_ARG( QList <QVariant>, list));
}
Und aufrufen tue ich sie so:

Code: Alles auswählen

    interface->callWithArgumentList(QDBus::NoBlock, "printout", list);
Hat da vielleicht jemand eine Idee was ich dafuer noch aendern muss?

Vielen Dank,
Olli
Antworten