ListSelectionListener wywołany dwukrotnie
class MyListListener implements ListSelectionListener {
public void valueChanged (ListSelectionEvent e) {
JList source = (JList) e.getSource();
// do something
}
}
JList myList = new JList (myModel);
myList.addListSelectionListener (new MyListListener());
Robię coś bardzo prostego. Mam listę JList. Jeśli wybrany jest element na liście, wywoływany jest program obsługi. Problem polega na tym, że program obsługi jest wywoływany dwukrotnie, gdy przechodzę z jednego elementu do drugiego. Widzę użycie, jeśli pierwszy wyzwalacz przechodzi na pierwotnie wybrany przedmiot, a drugi wyzwalacz przechodzi na nowy przedmiot. Ale za każdym razem przekazywany jest ten sam nowy przedmiot. Jaki jest sens tego? Czy istnieje sposób na uniknięcie dwukrotnego wywołania programu obsługi?