我现在做一个小程序,有几个JCombobox,如何只响应选中JCombobox的下拉项才产生的事件,因为我需要用选中的Item去数据库查询数据,比如此JCombobox有(0001,0002,0003......)如果选中0002,就用0002去数据库查询相应的记录,那么如何响应选中0002这个事件呢?请各位帮帮忙!谢谢啦!
------解决方案--------------------
JCombobox.addItemListener(ItemListener listener)
------解决方案--------------------
public class JComboBoxDemo extends JFrame implements ItemListener
{
JComboBox jb;
JPanel p=new JPanel();
public JComboBoxDemo()
{
jb=new JComboBox();
jb.addItem("1");
jb.addItem("2");
jb.addItem("3");
jb.addItemListener(this);
p.add( jb);
this.getContentPane().add(p);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(360, 260);
this.setVisible(true);
}
public void itemStateChanged(ItemEvent e)
{
if(e.getStateChange() == ItemEvent.SELECTED)
{
String s=(String)jb.getSelectedItem();
System.out.println(s);
}
}
public static void main(String args[])
{
new JComboBoxDemo();
}
}
------解决方案--------------------
用ActionListener监听
当JComboBox选中时产生ItemEvent事件
选择后产生ActionListener
lz选中0002后在事件处理就可以用getSelectedItem()得到
所选进行相应的处理