SWT:如何找到被选中的项目?

时间:2011-10-27 07:16:59

标签: java swt

我已经实现了这样一个类:

public class ToolbarExample implement SelectionListener {
        ToolbarExample() {
                 //constructor ....

         openMenuItem.addSelectionListener(this);
         closeMenuItem.addSelectionListener(this);
        }

    @Override
public void widgetDefaultSelected(SelectionEvent e) {

}

@Override
public void widgetSelected(SelectionEvent e) {
               switch(e.???) {
               case openMenu Selected: open(); break;
               case closeMenu Selected: close(); break;          
}
}

我可以在SelectionEvent中使用哪种方法?即(???)

更新: 运行Fred示例代码后我调试代码,但e.item为null! enter image description here

1 个答案:

答案 0 :(得分:3)

以下代码为您提供所选小部件。

e.item or e.getSource()

样品

public void widgetSelected(SelectionEvent e) {
  Widget selectedItem = (e.item != null) ? e.item : e.getSource();
  if (selectedItem  == openMenu) {
    open();
  else if(selectedItem == closeMenu) {
    close();
  }
}