java 事件监听器可以同时被两个组件监听吗?怎么区分不同的组件!
比如说创建两个JComboBox对象,一个是music,一个是bcolor,如何确定事件的来源?监听器独自是一个类!
JComboBox music=new JComboBox();
music.addItem("选择背景音乐");
music.addItem("MUSIC-1");
music.addItem("MUSIC-2");
music.addItemListener(new itemListener());
JComboBox bgcolor=new JComboBox();
bgcolor.addItem("背景颜色");
bgcolor.addItem("默认颜色");
bgcolor.addItem("红 色");
bgcolor.addItem("蓝 色");
bgcolor.addItemListener(new itemListener());
------解决方案--------------------
Java code
music.setName("music");
bgcolor.setName("bgcolor");
public void itemStateChanged(ItemEvent e){
JComboBox combo = (JComboBox)e.getItemSelectable();
if("music".equals(combo.getName()){ ... }
if("bgcolor".equals(combo.getName()){ ... }
}