比如说创建两个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()){ ... }}