3.6.5. 选取器控件的标准行为(历史版本)

对于 PickerFieldLookupPickerFieldSearchPickerField 组件,一组标准行为是通过 PickerField.ActionType 枚举类型来定义的;操作的实现是 PickerField 接口的内部类,下面详细介绍这些实现。

在选取器组件中使用标准操作的示例:

<searchPickerField optionsDatasource="coloursDs"
                 datasource="carDs" property="colour">
  <actions>
      <action id="clear"/>
      <action id="lookup"/>
      <action id="open"/>
  </actions>
</searchPickerField>

LookupAction - 查找

LookupAction – 使用 lookup 标识符的 action。用来选取实体实例然后将选中的实体设置成组件的值。当触发这个动作的时候,会打开实体的查找界面

LookupAction 类中定义了下面这些特殊的方法:

  • setLookupScreenOpenType() 可以设置实体选择界面的打开模式。默认 THIS_TAB - 当前标签页

  • setLookupScreen() 可以设置实体查找界面的标识符。默认情况下,使用 {entity_name}.lookup,比如 sales$Customer.lookup。如果不存在这种类型的界面,则会尝试打开 {entity_name}.browse 界面,比如 sales$Customer.browse

  • setLookupScreenParams() 可以设置传递给查找界面的 init() 方法的参数。

  • afterSelect() 当选择的实体被设置到可视化组件的值之后,调用此方法。这个方法本身没有实现,可以通过继承重写此方法来处理这个事件。

  • afterCloseLookup() 不管是否选择了实体,只要关闭了查找界面就会最后调用此方法。这个方法本身没有实现,可以通过继承重写此方法来处理这个事件。

ClearAction - 清空

ClearAction - 使用 clear 标识符的 action。用来清空组件的值(比如设置成 null)。

OpenAction - 打开

OpenAction - 使用 open 标识符的 action。用来打开编辑组件当前值关联实体的编辑界面。

OpenAction 类中定义了下面这些特殊的方法:

  • setEditScreenOpenType() 可以设置实体编辑界面的打开模式。默认 THIS_TAB - 当前标签页

  • setEditScreen() 可以设置实体编辑界面的标识符。默认情况下,使用 {entity_name}.edit,比如 sales$Customer.edit

  • setEditScreenParams() 可以设置传递给编辑界面的 init() 方法的参数。

  • afterWindowClosed() 关闭了编辑界面之后调用此方法。这个方法本身没有实现,可以通过继承重写此方法来处理这个事件。