我已经实现了这样一个类:
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!
答案 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();
}
}