Очень плохо знаком с Java и Swing, и я играю с приложением Swi Gui.Он сгенерировал некоторый код для моего поля со списком:
comboBox.addActionListener(EventHandler.create(ActionListener.class, TestController, "changeSomething"));
, и у меня также есть это:
import javax.swing.JComboBox;
import javax.swing.JOptionPane;
public class StudyPlanController {
private JComboBox factors;
public void changeSomething() {
JOptionPane.showMessageDialog(null, "change!");
}
}
У меня есть 2 вопроса.
Когда я изменяю выбранный элемент в поле со списком, я получаю сообщение «изменить!»только в первый раз это меняется.Почему это так?
При поиске решения проблемы весь код для настройки прослушивателя отличался от кода, сгенерированного для меня.например,
box.addItemListener (new ItemListener () {public void itemStateChanged (ItemEvent e) {System.out.println (e.getItem () + "" + e.getStateChange ());}});
Как правильно создать слушателя?почему есть два способа сделать это?
Спасибо