Java 在不同透视图中更新视图

Java 在不同透视图中更新视图,java,eclipse,eclipse-rcp,Java,Eclipse,Eclipse Rcp,我在开发基于3.xapi的eclipsercp应用程序时遇到了一个小问题。 我有两种不同的视角,一种是有很多树查看器,另一种是一个树查看器和一个编辑器。问题是,当我在第一个透视图中开始遍历过程时(这需要很长时间并且在后台进程中运行),我希望同时切换到第二个透视图进行一些工作。遍历完成一段时间后,我仍在第二个透视图中,希望更新第一个透视图中的所有树查看器,但问题是如何获得相应的视图实例来执行更新?我只能访问活动页面,但这对我没有帮助。 那么,当我还在第二个透视图中时,有没有办法从第一个透视图访问视

我在开发基于3.xapi的eclipsercp应用程序时遇到了一个小问题。 我有两种不同的视角,一种是有很多树查看器,另一种是一个树查看器和一个编辑器。问题是,当我在第一个透视图中开始遍历过程时(这需要很长时间并且在后台进程中运行),我希望同时切换到第二个透视图进行一些工作。遍历完成一段时间后,我仍在第二个透视图中,希望更新第一个透视图中的所有树查看器,但问题是如何获得相应的视图实例来执行更新?我只能访问活动页面,但这对我没有帮助。 那么,当我还在第二个透视图中时,有没有办法从第一个透视图访问视图?如果没有,我还能做些什么来解决这个问题? 我可以设计的一个解决方案是保存遍历的结果,然后等待,直到我更改回我的第一个透视图,然后再进行更新,但这意味着我需要一个类来临时保存我的结果,这个类非常大


任何建议都将不胜感激。

您可以访问所有工作台页面,IWorkbenchWindow有一个getPages方法。@greg-449谢谢,我不知道IWorkbenchWindow中的getPages。。。我明天会试试@greg-449我刚试过,但还是不行。。。我使用以下方法获取我的所有工作台窗口,但尽管有两个窗口是打开的,但我只获取一个:PlatformUI.getWorkbench.getWorkbenchWindows@greg-449当我进入这一页时,我可以找到我所有的视图,也可以找到我其他角度的视图,但是当我调用函数“findView…”时,它似乎只从当前角度查看视图,而不是从其他角度查看视图。。。为什么会这样。。。这是有原因的吗?为什么不在启动时将要更新的树查看器传递给后台进程,而不是再次尝试查找视图?