【发布时间】:2016-05-05 23:03:20
【问题描述】:
我已经创建了一个纯 Eclipse e4 富客户端平台应用程序模型。我使用透视堆栈创建了多个透视,但我无法切换其他透视,因为 Eclipse e4 中没有默认透视栏或切换器图标。如何在纯Eclipse e4中实现透视切换器?
【问题讨论】:
标签: eclipse eclipse-rcp e4
我已经创建了一个纯 Eclipse e4 富客户端平台应用程序模型。我使用透视堆栈创建了多个透视,但我无法切换其他透视,因为 Eclipse e4 中没有默认透视栏或切换器图标。如何在纯Eclipse e4中实现透视切换器?
【问题讨论】:
标签: eclipse eclipse-rcp e4
EPartService.switchPerspective 将执行实际的切换,但您必须设计和实现 UI。
您可以在窗口修剪栏中使用ToolBar,并为每个透视图提供按钮。或者,将组合作为工具控件与透视列表,由您决定。
要将控件放在修剪栏的右侧,您需要将两个工具控件对象添加到修剪。比如:
第一个工具控件只是填充条中心的间隔。
在控件的标签选项卡上添加单词stretch 以告诉 e4 将此控件扩展到尽可能多的空间:
您还必须为控件指定一个类。这只需要创建一个空的Composite 来占用空间。例如:
public class SpacerControl
{
@PostConstruct
public void postConstruct(final Composite parent)
{
Composite body = new Composite(parent, SWT.NONE);
body.setLayout(new FillLayout());
}
}
第二个工具控件将包含用于透视开关的组合控件。比如:
public class ComboControl
{
@PostConstruct
public void createGui(final Composite parent)
{
Combo combo = new Combo(parent, SWT.READ_ONLY);
... initialize Combo, add listeners, ....
}
}
这应该最终看起来像这样:
【讨论】: