在处理程序中隐藏和显示部件

Hide and show Parts in Handler

我试图隐藏和显示我的处理程序的执行方法中的一部分。 但我似乎无法让它按我的预期工作。 访问 PartService 时,我得到一个 "Application does not have an active window" 异常。

这是我隐藏部分的代码

@Execute
@Inject
public void execute(final EPartService partService) {
    final MPart part = partService.findPart("mypart");
    partService.hidePart(part);
}                             

提前致谢

不要在您的方法中指定 @Inject,您只需要 @Execute

在应用程序 window 存在之前首次创建处理程序时,使用 @Inject 会导致代码 运行。

所以只是:

@Execute
public void execute(final EPartService partService) {