Hallo,
ich bekomme bei mir immer eine ArrayIndexOutOfBoundsException Fehlermeldung beim Löschen eines Elements aus meiner JList. Vielleicht kann mir von euch jemand sagen, warum das so ist. Hier mal ein paar Zeilen:
Der Code wird durch einen Button ausgelöst. Ich möchte nämlich das Element nach oben verschieben. Die JList trägt den Namen _layerBox und wurde wie folgt initialisiert:
Ich habe die Elemente meiner JList schon überprüft und habe über getModel().getSize() mir die Anzahl ausgeben lassen. Habe ich das zweite Element selektiert, wird im obigen Code auch iItem=1 herauskommen (ich habe nach dieser Zeile mir eine Ausgabe testhalber gemacht). Demnach habe ich also ein Element, dass auch gelöscht werden kann und trotzdem bekomme ich an der Stelle, wo das remove(index) auftaucht, die Fehlermeldung.
Kann mir jemand weiterhelfen?
ich bekomme bei mir immer eine ArrayIndexOutOfBoundsException Fehlermeldung beim Löschen eines Elements aus meiner JList. Vielleicht kann mir von euch jemand sagen, warum das so ist. Hier mal ein paar Zeilen:
Code:
public void actionPerformed(ActionEvent e) {
if(e.getActionCommand().equals("up"))
{
if(_layerBox.getSelectedIndex() != 0 && _layerBox.getSelectedValue() != null)
{
int iItem = _layerBox.getSelectedIndex();
Geometry oItem = (Geometry)_layerBox.getSelectedValue();
_layerBox.remove(iItem);
_layerBox.add(this, oItem, iItem);
_layerBox.setSelectedValue(oItem, true);
}
}
}
Der Code wird durch einen Button ausgelöst. Ich möchte nämlich das Element nach oben verschieben. Die JList trägt den Namen _layerBox und wurde wie folgt initialisiert:
Code:
_layerBox = new JList();
Ich habe die Elemente meiner JList schon überprüft und habe über getModel().getSize() mir die Anzahl ausgeben lassen. Habe ich das zweite Element selektiert, wird im obigen Code auch iItem=1 herauskommen (ich habe nach dieser Zeile mir eine Ausgabe testhalber gemacht). Demnach habe ich also ein Element, dass auch gelöscht werden kann und trotzdem bekomme ich an der Stelle, wo das remove(index) auftaucht, die Fehlermeldung.
Kann mir jemand weiterhelfen?