在 Eclipse RCP 中,我使用 IPageLayout.addView(...)
为 Perspective 创建 View
但这样我就没有对 View 的引用。因此我不知道如何告诉 ViewA 更新 ViewB。
这里最好使用什么模式?
最佳答案
除了上面提到的 VonC 之外,如果您需要的更改不是由选择触发的,您还可以使用 ISourceProviderListener
。
- 让
ViewB
实现ISourceProviderListener
- 创建
ISourceProvider
的实现并将其注册到服务中 - 让
ViewA
获取ISourceProvider
并更新它以触发ViewB
中的更改
阅读有关这些接口(interface)以及 IServiceLocator
和 ISourceProviderService
的文档,以更好地了解它是如何发挥作用的。
您还可以看到this Lars Vogel's tutorial其中有一些示例如何使用 ISourceProvider
关于java - 如何在 Eclipse RCP 中的 View 之间进行通信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2227701/