簡體   English   中英

如何在Eclipse e4中設置UI部分的輸入?

[英]How to set the input for the UI part in eclipse e4?

我正在使用eclipse e4應用程序。 我正在使用eventBroker將值從一個部分傳遞到另一部分。 如果打開了許多零件(選項卡種類),如何將值傳遞給當前選定的零件(選項卡)。 我正在使用@UIEventTopic獲取該部件的值。 但是問題是,值被復制到所有選項卡。 換句話說,我試圖在不同的選項卡中顯示不同的JFreechart,但是圖表已復制到先前的選項卡。

誰能建議我一些想法?

提前致謝

事件代理總是廣播到處理該事件的任何事物,您不能使用它來發送特定事件。

如果您在Handler中,則可以在@Execute方法中獲取當前部分,並直接在您的類中設置一個值-類似於:

@Execute
public void execute(@Named(IServiceConstants.ACTIVE_PART) MPart activePart)
{
  Object part = activePart.getObject();

  if (part instanceof MyClass)
   {
     ((MyClass)part).setValue(xxxx);
   }
}

更新:

如果您在另一個零件中,請使用EPartService獲取活動零件:

@Inject
EPartService partService;

...

MPart activePart = partService.getActivePart();

Object part = activePart.getObject();

if (part instanceof MyClass)
 {
    ((MyClass)part).setValue(xxxx);
 }

您也可以使用EPartService.findPart("part id")查找具有給定id的零件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM