Dorado 5 : 1.3.8.CommandQueue(命令队列) (RF2)

简述

用以同时执行多个Command对象。

使用

CommandQueue定义的代码如下:

<Control id="commandQueue" type="CommandQueue">
<Command command="commandMultiply" />
<Command command="commandDivide" />
<Command command="commandGetSystemInfo" />
</Control>

常用技巧

动态编程

在服务器端动态生成CommandQueue

protected void initControls() throws Exception {
super.initControls();//系统默认函数,注意保留
CommandQueue cmdQueue = (CommandQueue)createControl("MarmotRPCCommand ", " cmdQueue");
cmdQueue.addCommand("commandMultiply");
cmdQueue. addCommand("commandDivide");
}

使用视图模型实现类提供的createControl方法创建CommandQueue对象,注意第一个参数用以指定组件的类型,第二个参数指定新建对象的id.

在服务器段获得View(视图模型)中定义的CommandQueue,并动态它的属性

protected void initControls() throws Exception {
super.initControls();//系统默认函数,注意保留
CommandQueue cmdQueue = (CommandQueue)getControl("cmdQueue ");
cmdQueue. addCommand("commandMultiply");
cmdQueue. addCommand("commandDivide");
}

在上面的代码中可以看到通过实现类提供的getControl函数获得我们需要的组件对象,所需要的就是给它一个CommandQueue对象的id,注意开发时我们建议您直接在View的设计中添加一个空CommandQueue组件,这样我们就可以在initControls方法中通过getControl方法获得这个空的CommandQueue对象,并利用该对象提供的API进行各种设定和初始化的工作,如CommandQueue的addCommand ()方法。

主要属性说明

参考QueryCommand的属性说明

主要事件说明

参考QueryCommand的事件说明