Qt QML和QDBus互操作性

时间:2017-07-19 05:49:49

标签: qt properties qml dbus networkmanager

Qt中有一个属性系统。可以使用从一方面QDBusAbstractInterface的子类化和从另一方面 Qt QML的子类化,从 D-Bus公开属性。对于D-Bus服务接口的属性和信号,可以通过元对象编译器自动完成。对于QML的QObject的信号,槽和属性,它也可以由MOC自动完成。

但问题出现了:QML需要从小写字母开始的属性和方法(信号或插槽)名称,而网络管理器DBus API导出所有成员标识符以大写字母开头的对象(有时使用小写字母) ,说org.freedesktop.NetworkManager.state()方法)。但我想将这样的QDBusAbstractInterface派生对象直接用于QML代码。

有没有办法自动翻译方法'和属性'名称分为QtQml的一个表单和QDBus的另一个表单?

Example如何分别为NetworkManager对象的所有属性发出信号。

补充:KDE NetworkManager Qt根据问题没有太大用处,因为在QML中没有用QObject-s导出的属性。

0 个答案:

没有答案