如何在两个视图下放置视图?

时间:2017-05-25 12:50:45

标签: eclipse-plugin eclipse-rcp

使用标准方法

layout.addView(NewsView.ID, IPageLayout.BOTTOM, 0.7f, ChartView.ID);

NewsView将放在ChartView下。

view under one view

但是如何指定一个视图应放在两个视图下?

view under two views

2 个答案:

答案 0 :(得分:0)

你不能直接这样做,你必须使用单独的IFolderLayouts来包含底部,左侧和右侧的视图。

例如:

IFolderLayout bottom = layout.createFolder("bottom", IPageLayout.BOTTOM, 0.7f, IPageLayout.ID_EDITOR_AREA);
bottom.addView("bottom.view");

IFolderLayout left = layout.createFolder("left", IPageLayout.LEFT, 0.25f, IPageLayout.ID_EDITOR_AREA);
left.addView("left.view");

IFolderLayout right = layout.createFolder("right", IPageLayout.RIGHT, 0.7f, IPageLayout.ID_EDITOR_AREA);
right.addView("right.view");

首先创建底部文件夹布局使其跨越整个窗口。

答案 1 :(得分:0)

添加视图的顺序很重要,并且会对最终布局产生影响。

此代码会在NewsViewChartView下找到TransactionsView

layout.addView(ChartView.ID, IPageLayout.RIGHT, 0.2f, InstrumentsView.ID);
layout.addView(NewsView.ID, IPageLayout.BOTTOM, 0.6f, ChartView.ID);    
layout.addView(TransactionsView.ID, IPageLayout.RIGHT, 0.7f, ChartView.ID);

此代码只会在NewsView

下找到ChartView
layout.addView(ChartView.ID, IPageLayout.RIGHT, 0.2f, InstrumentsView.ID);
layout.addView(TransactionsView.ID, IPageLayout.RIGHT, 0.7f, ChartView.ID);
layout.addView(NewsView.ID, IPageLayout.BOTTOM, 0.6f, ChartView.ID);