Home · All Classes · Modules  · QSS HELP  · QSS 案例 · VER007 HOME

QDBusInterface Class Reference
[QtDBus module]

该QDBusInterface类是对远程对象接口的代理。More...

继承QDBusAbstractInterface

Methods


Detailed Description

该QDBusInterface类是对远程对象接口的代理。

QDBusInterface是用来放置调用远程对象,连接到远程对象导出的信号,并获取/设置远程属性值的通用方法类。这个类是动态访问远程对象很有用:即当你没有一个生成代码,表示该远程接口。

呼叫通常放置使用call( )函数,它构造消息,发送过来的大巴,等待答复和解码的答复。信号是通过使用正常连接到QObject.connect()函数。最后,属性是使用访问QObject.property()和QObject.setProperty()函数。

下面的代码片断演示了如何执行数学运算"2 + 2"在所谓的远程应用程序com.example.Calculator通过会话总线,访问。

 QDBusInterface remoteApp( "com.example.Calculator", "/Calculator/Operations",
                           "org.mathematics.RPNCalculator" );
 remoteApp.call( "PushOperand", 2 );
 remoteApp.call( "PushOperand", 2 );
 remoteApp.call( "ExecuteOperation", "+" );
 QDBusReply<int> reply = remoteApp.call( "PopOperand" );

 if ( reply.isValid() )
     printf( "%d", reply.value() );          // prints 4

Method Documentation

QDBusInterface.__init__ (self, QString service, QString path, QString interface = QString(), QDBusConnection connection = QDBusConnection.sessionBus(), QObject parent = None)

创建一个动态QDBusInterface与接口相关联的对象interface在对路径物件path对服务service,使用给定的connection。如果interface是一个空字符串,创建的对象将引用该对象中找到的所有接口的合并。

parent传递给基类构造函数。

如果该远程服务service不存在,或者如果发生错误试图获取远程接口的描述interface,创建的对象将是无效的(见isValid())。




PyQt 4.10.3 for X11 Copyright © Riverbank Computing Ltd and Nokia 2012 Qt 4.8.5