<< 点击显示目录 >> 主页 mappView帮助助手 > mapp View帮助信息 > 工程 > 定制的小工具 > 复合型小部件 > 编辑复合小部件(XML) > 复合小部件事件和行动 > 复合部件操作数Compound widget operand |
一个操作数是一个值的容器。
操作数的数据类型定义了它的内容应该如何解释。
操作数的值用读取动作的结果进行初始化。
操作数可以在表达式(条件或方法参数)中按名称使用。
目前,只允许在部件上为操作数配置读操作。
一个操作数在事件绑定中定义,并在表达式(条件)中使用。
Element |
Attribute |
说明 |
Operand |
name |
操作数在表达式中使用的名称。 一个有效的名称。 以一个字母或下划线开头,后面有任意数量的字母、数字或下划线 不允许与事件参数相同。 不允许被称为 "结果"。 |
datatype |
操作数的数据类型. •BOOL •ANY_REAL •ANY_INT •ANY_STRING •DATE_AND_TIME |
|
ReadTarget |
|
对其进行读取操作的目标。 |
一个复合部件包含部件RadialButtonBar,它在运行时显示4或8个ToggleButton部件。ToggleButton部件通过一个可见的绑定被显示或隐藏。
根据径向按钮栏上显示的是4个还是8个切换按钮,小部件所对准的轨道的半径应该改变。
<EventBindings>
<EventBinding>
<Source xsi:type="widget.Event" widgetRefId="ToggleButton5" event="VisibleChanged" />
<Operand name="NumberVisibles" datatype="ANY_INT">
<ReadTarget xsi:type="widget.Action.Read" widgetRefId="RadialButtonBar1">
<Method name="GetVisibleItems"/>
</ReadTarget>
</Operand>
<EventHandler condition="NumberVisibles=4">
<Action>
<Target xsi:type="widget.Action" widgetRefId="RadialButtonBar1">
<Method name="SetRadius" radius="100px" />
</Target>
</Action>
</EventHandler>
<EventHandler condition="NumberVisibles=8">
<Action>
<Target xsi:type="widget.Action" widgetRefId="RadialButtonBar1">
<Method name="SetRadius" radius="180px" />
</Target>
</Action>
</EventHandler>
</EventBinding>
</EventBindings>
所有操作数在事件被触发后和事件处理程序开始前被初始化。在初始化过程中,读取动作的结果被保存在操作数中。当使用多个操作数时,初始化的顺序是未定义的。操作数可以在任何事件/结果处理程序中使用。
操作数总是包含事件被触发时的当前值。对于事件处理程序中的长期运行的操作,有可能该值不再是当前值。
如果在事件处理程序中需要一个当前值,可以在任何时候使用读操作和结果处理程序来检索一个值。