Swing中ComboBox改变选择时ItemStateChanged 触发两次。一次时旧的选项deselect时触发,另一个是在新的选项select时触发。其顺序好象是先触发select,再是deselect,因此如果后一次获得选中项时会是空的,解决方法:
public void itemStateChanged(ItemEvent e) {
if (e.getStateChange() == ItemEvent.SELECTED) {
refreshTable((String) (cusname.getSelectedItem()), null);
refreshOrderNumber((String) (cusname.getSelectedItem()));
ordernumber.setSelectedIndex(-1);
}
}