可以将此问题概括为类通信问题,并且可能有解决此特定问题的解决方案/模式。

我在RCP应用程序中使用Eclipse表单,每个表单都有很多部分。

大多数节都是相关的,即如果用户修改了AI节中的内容,则想立即对B节进行某些更改。我使用侦听器执行此操作,并且我将所有节代码都放在同一类中,但是可以通过任何方式传达这些更改而无需将所有代码组合在一起,以便我可以编写更清晰的代码?

最佳答案

您应该使用Eclipse数据绑定来实现控件之间的依赖关系。

例如,以下代码段将复选框的选择状态绑定到文本字段的启用状态

ctx = new DataBindingContext();
ISWTObservableValue observe = WidgetProperties.selection().observe(myCheckBox);
ISWTObservableValue observe2 =  WidgetProperties.enabled().observe(myTextField);
ctx.bindValue(observe, observe2)

10-02 11:09