Scout Eclipse链接字段

时间:2015-12-23 12:40:04

标签: drop-down-menu hierarchy eclipse-scout

我在侦察兵中有4个聪明的领域。

所以说我有智能字段A,B,C,D和A是B的父节点,B是C的父节点,C是D的父节点。(逻辑上,在侦察意义上没有必要。)

如果我在C字段中输入示例值,则必须自动填写A和B字段。但如果我在A字段中输入值,则需要重置所有其他字段。

我的问题是,如果我有A:

@Override
protected void execChangedValue() {

  B.resetValue();
  C.resetValue();
  D.resetValue();
}

如果我在B:

@Override
protected void execChangedValue() {

  // get changed value
  final Long A_value = A.getValue();

  // reset call child fields
  C.resetValue();
  D.resetValue();

  if (A_value == null) {

    A.setValue(NewValueForA);
  }
}

这将创建循环。 B将在A中设置值,A将重置B,....这不是我想要的......

Scout中有一般的方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

对于那些复杂的案例,我在this answer中介绍并解释了setValueWithoutChangedValueTrigger(..)。你可以这样做:

getBField().setValueWithoutChangedValueTrigger(getBField().getInitValue());
getCField().setValueWithoutChangedValueTrigger(getCField().getInitValue());
getDField().setValueWithoutChangedValueTrigger(getDField().getInitValue());

依旧......

另见相关讨论:Controlling if execChangedValue() is called or not