Eclipse E4 RCP - 创建部件后获取 IEventBroker 对象

Eclipse E4 RCP - Get IEventBroker object after part created

当我的应用程序启动时,其中一个部分还不可见。当我使用处理程序发送数据,然后打开部件时,我在创建部件时无法获取此数据。如果我在启动应用程序时单击该部件,然后再次使用处理程序,该部件现在将接收数据。那么我如何让一个部分在数据还不可见时或创建时接收数据。如何获取之前发送的数据。

IEventBroker 不保留它广播的数据。

零件的 class 直到它可见(呈现更准确)后才会创建 - 您必须将东西存储在其他地方。

您可以使用某种 'manager' class 来保存数据。您的处理程序可以将数据放入管理器中,该部分可以从管理器中检索它。

管理器的一种方法是使用可创建的单例:

@Creatable
@Singleton
public class MyMananger
{ 
   ...
}

这可以注入到处理程序和部分中,您将始终获得相同的管理器实例。