如何获取上一个或上一个或未选择的项目,然后获取新项目JComboBox?
我有一个JComboBox,我有一个听众附加它.
现在,每当用户从下拉列表中"选择"事件时,即使他们刚刚重新选择之前选择的值,事件也会触发.
如果组合框的选定值与选择之前的值不同,有没有办法只触发事件?
我想我可以将组合框的值存储在不同的字段中,并在每次事件触发时进行比较,这看起来有点矫枉过正.我有20个左右这样的组合框.我宁愿不再有20个变量来存储值,所以事件不会触发.
一定有更好的方法.
谢谢您的帮助!
我正在尝试在Java JComboBox中听取选择的更改.我曾尝试使用ActionListener,但问题是:动作侦听器执行类似这样的操作
public void actionPerformed(ActionEvent e){
JComboBox<String> source = ((JComboBox<String>)e.getSource());
String selected = source.getItemAt(source.getSelectedIndex());
/*now I compare if the selected string is equal to some others
and in a couple of cases I have to add elements to the combo*/
}
Run Code Online (Sandbox Code Playgroud)
您可以注意到,当我需要向组合添加元素时,另一个事件被触发并且再次调用actionPerformed方法,即使我不想要它,并且代码可能循环... :(有没有办法到只听选择更改而不是一般的更改事件?谢谢