J
JackTheRipper99
Gast
Hallo,
ich habe heute Abend angefangen mich in ein paar JComponents einzuarbeiten, darunter JLists. Als erstes möchte ich darauf hinweisen das ich mit NetBeans mit seinem Oberflächendesigner auf einen Mac arbeite - auf einem PC gehts manchmal.
Ich erstelle eine Liste mit folgendem Code :
Ich habe jetzt ewig versucht die Elemente zu bearbeiten und habe es bis jetzt nicht geschafft.
Mein Code zum entfernen eines Elements sieht (nach vielen Umstellungen ) folgendermaßen aus:
Beim Knopfdruck erhalte ich dann folgende Konsolenmeldung, nach das Model 5 Einträg groß ist, trotzdem folgende Exception:
Kann das jemand erklären? (natürlich kann man auch anders Elemente hinzufügen oder entfernen aber ich habe bis jetzt immer die gleiche Exception erhalten)
ich habe heute Abend angefangen mich in ein paar JComponents einzuarbeiten, darunter JLists. Als erstes möchte ich darauf hinweisen das ich mit NetBeans mit seinem Oberflächendesigner auf einen Mac arbeite - auf einem PC gehts manchmal.
Ich erstelle eine Liste mit folgendem Code :
Java:
rechnung = new javax.swing.JList();
rechnung.setModel(new javax.swing.DefaultListModel() {
String[] strings = { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" };
public int getSize() { return strings.length; }
public Object getElementAt(int i) { return strings[i]; }
});
jScrollPane1.setViewportView(rechnung);
Ich habe jetzt ewig versucht die Elemente zu bearbeiten und habe es bis jetzt nicht geschafft.
Mein Code zum entfernen eines Elements sieht (nach vielen Umstellungen ) folgendermaßen aus:
Java:
DefaultListModel dasModel = (DefaultListModel)rechnung.getModel();
System.out.println(dasmodel.getSize());
dasModel.remove(4);
rechnung.setModel(dasModel);
Java:
run:
5
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 4 >= 0
at java.util.Vector.elementAt(Vector.java:427)
at javax.swing.DefaultListModel.remove(DefaultListModel.java:476)
at prg1.NewJFrame.entfernenActionPerformed(NewJFrame.java:126)
at prg1.NewJFrame.access$000(NewJFrame.java:18)
at prg1.NewJFrame$1.actionPerformed(NewJFrame.java:52)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2028)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2351)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6374)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6139)
at java.awt.Container.processEvent(Container.java:2085)
at java.awt.Component.dispatchEventImpl(Component.java:4736)
at java.awt.Container.dispatchEventImpl(Container.java:2143)
at java.awt.Component.dispatchEvent(Component.java:4566)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4621)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4282)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4212)
at java.awt.Container.dispatchEventImpl(Container.java:2129)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4566)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:680)
at java.awt.EventQueue.access$000(EventQueue.java:86)
at java.awt.EventQueue$1.run(EventQueue.java:639)
at java.awt.EventQueue$1.run(EventQueue.java:637)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
at java.awt.EventQueue$2.run(EventQueue.java:653)
at java.awt.EventQueue$2.run(EventQueue.java:651)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:650)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
BUILD SUCCESSFUL (total time: 10 seconds)