eclipse插件中的ComboViewer

时间:2015-02-10 00:19:21

标签: java eclipse eclipse-plugin

我有一个问题。我正在开发一个Eclipse插件。我有他们的一些看法。 我的问题是其中两个。 查看A(使用ComboViewer)也是reiceiver和发件人。(这意味着查看A 从另一个视图中获取一些值,并将值添加到查看A 的ComboViewer。(这部分我已经意识到),比这个值发送到另一个查看B

代码如下所示:

公共类ComboView扩展了ViewPart {

@Override
public void createPartControl(Composite parent) {
    parent.setLayout(null);

    ComboViewer comboViewer = new ComboViewer(parent, SWT.NONE);
    Combo combo = comboViewer.getCombo();
    combo.setBounds(281, 163, 232, 22);
       BundleContext ctx = FrameworkUtil.getBundle(CommitView.class).getBundleContext();
        EventHandler handler = new EventHandler() {
          public void handleEvent(final Event event) {

                if(SelectionView.viewwert!=0)
                {comboViewer.getCombo().removeAll();}
                else{

              if( parent.getDisplay().getThread() == Thread.currentThread() ) {
              comboViewer.add(event.getProperty("commidid"));
            } else {
              parent.getDisplay().syncExec(new Runnable() {
                public void run() {
                  comboViewer.add(event.getProperty("commidid"));
                }
              });
            }
                }
          }
        };

        Dictionary<String,String> properties = new Hashtable<String, String>();
        properties.put(EventConstants.EVENT_TOPIC, "viewcommunicationcommidid/*");
        ctx.registerService(EventHandler.class, handler, properties);
      }

      @Override
      public void setFocus() {
      } 
}

当我执行我的插件时,值会显示在查看A

的ComboViewer中

现在,当我在视图A 中选择Comboviewer的值时,将比较此数值与数据库或数组,并且相应的值应显示在视图B < /strong>。当我更改值时应该更新(这意味着它应该是同步的)

我的问题是如何获得组合框的选择值,以使用此选择值。

我希望我能解释一下我的问题。

0 个答案:

没有答案