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

时间:2010-08-03 14:57:14

标签: java eclipse eclipse-rcp rcp

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

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

你能在这帮忙吗?有没有办法更改页面合成?

由于

2 个答案:

答案 0 :(得分:1)

它应该在ViewSashContainer课程上。根据我的经验,我将代码放在方法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);

答案 1 :(得分:0)

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

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

要确保用户不会弄乱视角,请确保按照this link

中的说明修复