如何在Eclipse e4中打开另一个部件

时间:2014-09-10 10:36:27

标签: eclipse rcp e4

我正在开发一个e4应用程序。最初我有A部分。我在启动应用程序时显示A部分而B部分不可见。在A部分中,我将显示带链接的HTML页面。当用户点击任何链接时,我需要打开另一个部分,B。这两个部分将同时可见,就像Windows的垂直平铺窗口一样。怎么做?

1 个答案:

答案 0 :(得分:10)

如果您的应用程序模型中有零件定义,则可以使用EPartService

@Inject EPartService partService;

partService.showPart("part id", PartState.ACTIVATE);

将在应用程序模型中的任何位置打开该部件。如果您不希望最初显示的零件关闭零件的应用程序模型条目中的“待渲染”标志。

或者,您可以从“零件描述符”

创建零件
MPart part = partService.createPart("part descriptor id");

在这种情况下,您需要将零件添加到零件堆栈中,然后显示它:

@Inject EModelService modelService;

@Inject MApplication app;

MPartStack partStack = (MPartStack)modelService.find("part stack id", app);

partStack.getChildren().add(part);

partService.showPart(part, PartState.ACTIVATE);