2014-03-24 44 views
2

我正在使用纯eclipse e4应用程序。我创建了一个处理程序和两个部分。使用处理程序,我选择了这些文件,并将其显示在一个名为“Part A”的部分中。 A部分有一个带复选框的tableviewer。从表格查看器中选择特定的文件复选框后,我需要从这些选定的文件中计算出一些值,并在第二部分中以某种图形的形式显示它们,例如B部分。我需要B部分中的选定文件,以便可以处理这些文件文件和使用Jfreechart我可以显示在B部分的图表。如何在eclipse e4中将值从一个视图发送到其他视图?

我的问题是如何将值从部分A传递到部分B?

回答

3

您可以使用e4 Event Broker来执行此操作。

在想要发送事件注入事件代理程序的一部分:

@Inject 
private IEventBroker eventBroker; 

要发送的数据异步使用:

eventBroker.post("base_topic/data_event", data); 

同步发送使用:

eventBroker.send("base_topic/data_event", data); 

在你想要接收数据的部分:

@Inject 
@Optional 
void dataEvent(@EventTopic("base_topic/data_event") DataType data) 

如果要在UI线程上接收数据,请使用@UIEventTopic而不是@EventTopic

事件主题名称是您决定的,我刚刚在此处使用了一个示例。

注意:由于这使用了注入,代码必须类似MPart类(或者您必须自己注入)。

更多详细信息here

相关问题