ListSelectionlistener problem when adding new elements
Kristof Camelbeke
Ranch Hand
Joined: Nov 28, 2001
Posts: 97
posted
0
Hello , Subject says it all. I received help to clear the Jlist selection ! thanks Manfred !! But I still get an exception in the ListSelectionListener when I add a new element to the Jlist. The problem I'm having is situated in the ListSelectionListener where I set the elements which are inside a vector to the selected item in the Jlist. This works veryw well EXCEPT when I add a new element to the Jlist. When adding a new element I receive an exception like this : Exception occurred during event dispatching: java.lang.ArrayIndexOutOfBoundsException: -1 < 0 at java.util.Vector.elementAt(Vector.java:427) at veld.VeldGUI.veldenListSelected1(VeldGUI.java:236) at veld.VeldGUI.access$300(VeldGUI.java:23) at veld.VeldGUI$4.valueChanged(VeldGUI.java:128) at javax.swing.JList.fireSelectionValueChanged(JList.java:946) at javax.swing.JList$ListSelectionHandler.valueChanged(JList.java:960) etc..... I thought with clearing the selection in the list I could solve this but it doesn't work. I probably have to do something in the listener. Does anybody have any advice to solve this problem? Should I work with a Datalistener ? Thanks, Kristof
Manfred Leonhardt
Ranch Hand
Joined: Jan 09, 2001
Posts: 1492
posted
0
Hi Kristof, Not exactly clear on what you are doing, but this might or might not help you. The ListSelectionListener actually gets called twice for each user selection. You should use the method isValueAdjusting to make sure you only run your code once and not twice. That might actually be your problem (i.e., the double call could be screwing you up). Example:
Regards, Manfred.
subject: ListSelectionlistener problem when adding new elements