java - 如何在 Eclipse RCP 中的 View 之间进行通信?

标签 java eclipse-rcp

在 Eclipse RCP 中,我使用 IPageLayout.addView(...) 为 Perspective 创建 View

但这样我就没有对 View 的引用。因此我不知道如何告诉 ViewA 更新 ViewB。

这里最好使用什么模式?

最佳答案

除了上面提到的 VonC 之外,如果您需要的更改不是由选择触发的,您还可以使用 ISourceProviderListener

  • ViewB 实现 ISourceProviderListener
  • 创建 ISourceProvider 的实现并将其注册到服务中
  • ViewA 获取 ISourceProvider 并更新它以触发 ViewB 中的更改

阅读有关这些接口(interface)以及 IServiceLocatorISourceProviderService 的文档,以更好地了解它是如何发挥作用的。

您还可以看到this Lars Vogel's tutorial其中有一些示例如何使用 ISourceProvider

关于java - 如何在 Eclipse RCP 中的 View 之间进行通信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2227701/

相关文章:

java - BiFunction 接口(interface)中的 compose 方法是什么样的?

java - 在 for 循环内使用 switch 语句

java - 序列化 EMF 模型实例的最佳方法是什么?

java - 如何处理 Spring Data JDBC 中的软删除?

java - 为什么我的无状态 session bean 可以作为有状态 session bean 工作?

java - 更改 Eclipse RCP 3.x 应用程序中的默认 io-wizard 镜像

java - tableviewercolumn setwidth 百分比而不是像素

java.lang.NoClassDefFoundError : org/eclipse/draw2d/LightweightSystem

java - 使用哪个监听器来通知遏制中的更改?

java - 无法在 R/RStudio 上安装 openNLPdata_1.5.3-1.tar.gz