Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java RCP应用程序和;更改背景颜色并将图像置于应用程序的中心_Java_Eclipse_Eclipse Rcp_Rcp - Fatal编程技术网

Java RCP应用程序和;更改背景颜色并将图像置于应用程序的中心

Java RCP应用程序和;更改背景颜色并将图像置于应用程序的中心,java,eclipse,eclipse-rcp,rcp,Java,Eclipse,Eclipse Rcp,Rcp,我想将我的RCP应用程序的背景色设置为白色,并显示中心图像(徽标)。这是因为,由于事先没有显示视图或编辑器,用户应该选择打开哪个透视图。这是必要的,因为我定义了一个将首先显示的背景视图,但这阻止了我在完整模式下显示介绍/欢迎页面(它仅在待机模式下显示) 我摆弄了ApplicationWorkbenchWindowVisor并创建了一个方法createWindowContent(ShellShell),但我唯一做到的是设置shells的背景图像和颜色。这将导致页面出现白色边框(逻辑上是因为shel

我想将我的RCP应用程序的背景色设置为白色,并显示中心图像(徽标)。这是因为,由于事先没有显示视图或编辑器,用户应该选择打开哪个透视图。这是必要的,因为我定义了一个将首先显示的背景视图,但这阻止了我在完整模式下显示介绍/欢迎页面(它仅在待机模式下显示)

我摆弄了ApplicationWorkbenchWindowVisor并创建了一个方法createWindowContent(ShellShell),但我唯一做到的是设置shells的背景图像和颜色。这将导致页面出现白色边框(逻辑上是因为shell位于页面后面)。 获取页面组合的所有尝试均失败

你能帮忙吗?有没有办法更改页面组合


感谢

工作台的设置方式是,在透视图更改编辑器位置区域时,拥有一组持久的编辑器,并提供一组具有与透视图关联的位置的视图。这意味着您实际上仅限于视图和编辑器,除非您开始钻研创建自己的工作台行为。这是非常复杂的,虽然可能,但确实很困难

最简单的选择是创建一个透视图,其中包含一个显示您正在查找的内容的视图。缺点是您的透视图将显示在透视图选择器中。当我做类似的事情时,我创建了自己的透视选择器,而不是使用平台提供的默认透视选择器,这样用户就无法选择某些透视图


要确保用户不会弄乱透视图,请确保透视图是固定的,如

中所述,透视图应位于
viewshashcontainer
类中。根据我的经验,我将代码放在方法
postWindowOpen()
中。下面是我的代码:

ArrayList list =  (ArrayList)getWindowConfigurer().getWindow().getShell().getData("org.eclipse.ui.internal.dnd.dropTarget");
ViewSashContainer viewSash = (ViewSashContainer) list.get(2);
Composite composite = viewSash.getParent();
composite.setBackgroundImage(image);

您想更改什么背景,背景视图还是其他背景?我想将应用程序页面的灰色更改为更好的颜色,带有徽标。你可以在Windows上的许多非RCP应用程序上看到这一点。谢谢。我已经这么做了,但它弄乱了我的欢迎/介绍页面。不知何故,它只是想在待机状态(小型左侧版本)而不是完全模式下显示自己。这就是为什么我想改变背景。