有两个下拉选项:年份,月份。
年份有2009 2010 2011 ……
月份从1到12月……
现在有个问题:private void onChange(java.awt.event.ItemEvent evt) {
String s = year1.getSelectedItem().toString();
System.out.println(s);
}当我改变月份的时候,我想输出年份。虽然年份被输出了,但是每次都是成对出现的。例如:
如果当时我选择的是2009年,那么控制台就输出2个2009.选择2010年,控制台就输出两个2010.。。
不知高手们是否遇过这种问题。望高手解答一二~~~~不胜感激中……

解决方案 »

  1.   

    如果想只触发一次,应该是
    if(ItemEvent.SELECTED==evt.getStateChange()){//选择时
    String s = year1.getSelectedItem().toString();
            System.out.println(s);
    }
    或者if(ItemEvent.DESELECTED==evt.getStateChange()){//取消选择时
    String s = year1.getSelectedItem().toString();
            System.out.println(s);
    }