Eclipse e4 RCP - 在运行时设置标题栏文本

时间:2014-11-28 13:58:12

标签: rcp e4

我希望能够在运行时更改标题栏文本。通常我想在我的应用程序打开文件时执行此操作,以便在标题栏中包含应用程序名称 - 文件名。

我读过关于使用ApplicationWorkbenchWindowAdvisor获取IWorkbenchWindowConfigurer,然后使用它来设置标题的人,但我实际上并不知道在哪里或如何抓住ApplicationWorkbenchWindowAdvisor,或者这是否是我需要写的课程。

目前,标题是通过我的plugin.xml中的appName属性设置的。

有人可以举例说明它的用法吗?

2 个答案:

答案 0 :(得分:2)

您可以通过在应用的顶级MWindow设置标签来执行此操作:

@Inject
MApplication application;
@Inject
EModelService modelService;

....

MWindow window = (MWindow)modelService.find("id of your top window", application);

window.setLabel("new label");

答案 1 :(得分:0)

使用EModelService按ID查找MWindow的替代方法是使用注入。通过这种方式,它可以在执行操作的控件的上下文中找到父(并且是活动的,尽管可能是冗余的)窗口(在您的情况下为文件选择器):

@Inject
@Active
private MWindow window;