Java 如何根据活动透视图阻止某些视图?

Java 如何根据活动透视图阻止某些视图?,java,eclipse,eclipse-rcp,Java,Eclipse,Eclipse Rcp,我希望能够尽量减少,调整大小,甚至关闭视图,然后当我觉得它恢复他们的观点,从说菜单回来 一个具体的例子: 我有视图V1、V2、V3、V4、V5、V6、V7和透视图P1、P2、P3。 如果切换到透视图P1,将显示视图V1和V2,但如果需要,还可以打开V4,其余视图不可用。 如果切换到透视图P2,将显示视图V3和V5,但如果需要,还可以打开V4和V6,其余视图不可用。 如果切换到透视图P3,将显示视图V1和V3,但如果需要,还可以打开V4、V6和V7,其余视图不可用。 因此,根据哪个透视图处于活动状

我希望能够尽量减少,调整大小,甚至关闭视图,然后当我觉得它恢复他们的观点,从说菜单回来

一个具体的例子:
我有视图V1、V2、V3、V4、V5、V6、V7和透视图P1、P2、P3。 如果切换到透视图P1,将显示视图V1和V2,但如果需要,还可以打开V4,其余视图不可用。
如果切换到透视图P2,将显示视图V3和V5,但如果需要,还可以打开V4和V6,其余视图不可用。
如果切换到透视图P3,将显示视图V1和V3,但如果需要,还可以打开V4、V6和V7,其余视图不可用。
因此,根据哪个透视图处于活动状态,我只能访问某一组视图

关于我如何能够和应该这样做,有什么建议吗

谢谢你们


LE:顺便说一句,我想通过编程来实现这一点,这样我就可以在应用程序中实现这些规则,只需创建自定义透视图:

然后,您可以拥有任意多个透视图,并根据所需的视图进行定制。

您不应该试图禁止在这些透视图中创建其他视图。正是因为如此,Eclipse才成为每个用户都可以定制的好工具。你肯定不知道我作为一个用户真正需要什么视图,你只能猜测并创建一些好的默认透视图。

除了上面提到的,你还可以创建固定透视图。它们阻止用户在该透视图中打开其他视图。默认情况下,您必须在允许用户打开任何视图或向用户提供固定视图集之间进行选择


没有你可以否决的预演开放事件。您可以添加一个部件侦听器,当打开一个不需要的部件时,安排一个
UIJob
来隐藏该部件。。。但在这种情况下,用户会看到闪烁。

问题是我想用java代码来做,因为我想制作自己的应用程序。但是,除此之外,在您的解决方案中,如果我创建自己的透视图,我仍然可以访问所有视图。这就是Eclipse作为平台的工作方式。即使你使用Eclipse发布一个高度定制的RCP应用程序,也不会有太多阻止最终用户访问视图或在平台上安装其他软件。我认为即使是固定透视图,他也可以保存该透视图的副本并修改它,或者不修改它?哦。。。有一些属性可以阻止打开透视图按钮显示,如
org.eclipse.ui.iWorkbenchReferenceConstants.SHOW\u Open\u ON_Perspective\u BAR
。即使用户可以复制透视图,透视图仍然是固定的,他们也无法更改透视图。