ERLEDIGT
NEIN
NEIN
ANTWORTEN
6
6
ZUGRIFFE
6297
6297
EMPFEHLEN
-
14.02.08 00:06 #1
- Registriert seit
- May 2007
- Beiträge
- 49
Hallo erstmal =)
Ich hab gerade total n Brett vorm Kopf..
Wenn ich auf einen Button drücke will ich das alle Zeilen der Tabelle gelöscht werden. Mein Lösungsversuch:
Code :1 2 3 4 5 6 7
int i1 = jTable2.getRowCount(); for(int i=0;i<jTable2.getRowCount();i++) { System.out.println("I: "+i); tblDataModel2.removeRow(i); }
Allerdings funktioniert das nicht richtig.. Er löscht zwar ein paar Zeilen aber nicht alle..
Angenommen ich hab 4 Zeilen in der Tabelle. wenn ich auf den Button drücke löscht er alle Zeilen bis auf 2...
Hab ich mehrere Zeilen als 4 in meiner Tabelle so werden auch weniger Zeilen gelöscht..
Bin für jede Hilfe Dankbar =)
-
In der Schleifenabfrage liest du mit getRowCount die Zeilenanzahl aus ... die wird aber bei jedem Durchlauf dekrementiert und somit wird deine Schleife zu früh abgebrochen... d.h. speichere die Zeilenanzahl vorher in einer Variablen und teste dann auf diese Variable
-
14.02.08 01:33 #3
- Registriert seit
- May 2007
- Beiträge
- 49
Erstmal danke für deine hilfe =)
Allerdings funktionierts noch immer nicht...
int i1 = jTable2.getRowCount();
Code :1 2 3 4 5 6 7
for(int i=0;i<i1;i++) { System.out.println("I: "+i); tblDataModel2.removeRow(i); }
Er löscht immer noch nicht alle Zeilen..
Ausgabe in der Console:
PS: auch wenn ich am ende der schleife ein i1-- Mache funktionierts nichtjButton12.actionPerformed, event=java.awt.event.ActionEvent[..]
6
I: 0
I: 1
I: 2
I: 3
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 3 >= 3
hmpf so einfach und doch so schwer
-
14.02.08 08:29 #4MeinerEiner_80 Tutorials.de Gastzugang
Moin!
Angenommen, du hast 4 Zeilen in der Tabelle.
Dann sagst du in deiner Schleife,
lösche Zeile 1 : nun noch 3 Zeilen übrig
lösche Zeile 2 : nun noch 2 Zeilen übrig
lösche Zeile 3 : naa.. das wird nicht funktionieren...
Dem kannst du zum Beispiel entgegenwirken in dem du zuerst Zeile 4 löschst, dann Zeile 3...etc etc...
*grüssle*
MeinerEiner
-
14.02.08 13:00 #5
- Registriert seit
- May 2007
- Beiträge
- 49
Ahh super danke schön jetzt Funktionierts!
Lösung:
Code :1 2 3 4 5 6
for(int i=jTable2.getRowCount()-1;i>=0;i--) { System.out.println("I: "+i); tblDataModel2.removeRow(i); }
-
oder einfach so

[TableModel].setRowCount(0);
Gruß
Christian
-
14.02.08 16:18 #7MeinerEiner_80 Tutorials.de Gastzugang
Ähnliche Themen
-
Mehrere markierte Zeilen von JTable löschen
Von angeleyes21 im Forum JavaAntworten: 1Letzter Beitrag: 18.01.11, 18:14 -
JTable --> Zeilen löschen --> Exception
Von MariusMeier im Forum JavaAntworten: 6Letzter Beitrag: 01.11.08, 03:24 -
Alle Zeilen aus einer Tabelle löschen - unbekannte Zeilenzahl
Von Biergamasda im Forum Javascript & AjaxAntworten: 2Letzter Beitrag: 21.03.06, 18:31 -
Tabelle filtern und Zeilen löschen. Zeilen auch in ursprünglicher Tabelle löschen
Von Diable im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 22Letzter Beitrag: 09.12.05, 10:02 -
JTable Problem mit Zeilen löschen
Von flou im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 3Letzter Beitrag: 12.04.05, 09:52





Zitieren
Login





