【问题标题】:Eclipse E4 RCP - Get IEventBroker object after part createdEclipse E4 RCP - 在创建部分后获取 IEventBroker 对象
【发布时间】:2017-07-26 09:14:23
【问题描述】:

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

【问题讨论】:

    标签: java eclipse events rcp e4


    【解决方案1】:

    IEventBroker 不保留其广播的数据。

    部件的类在它可见(渲染得更准确)之前不会创建 - 您必须将内容存储在其他地方。

    您可以使用某种“管理器”类来保存数据。您的处理程序可以将数据放在管理器中,并且部件可以从管理器中检索它。

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

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

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

    【讨论】:

    • Greg 我什至没有注意到我有一个回复这个问题,直到现在,当我再次遇到它时。您的解决方案再次奏效,谢谢:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-07-31
    • 1970-01-01
    • 2018-03-08
    • 1970-01-01
    • 1970-01-01
    • 2013-04-25
    • 2016-10-15
    相关资源
    最近更新 更多