Object[][] neu erzeugen!!

MScalli

Erfahrenes Mitglied
Hi Leutz.
Ich erzeuge einene JTable mittels AbstractTableModel --> model.
Die Daten MUSS ich aber mit nem 2Dimensionalen Array füllen.

Jetzt zum Problem.

wenn ich jetzt eine Zeile Löschen will oder eine Leere hinzufügen muss muss ich dem model z.B diese Methode hinzufügen

Code:
	    public void removeRow(int row) {
	    	System.out.println("removeRow");
	    	 // Hier muss ein neues Object[][] erzeugt werden.. aber wie?

	        this.fireTableRowsDeleted(row, row);
	    }

mein Object[][] data hat ja leider eine feste grösse. Deswegen hab ich mir gedacht ich erzeuge ein neues!!
Aber wie kann ich data überschreiben?

D.H ich würde alle Daten aus dem Array Data in ein HilfsArray packen(in einer Schleife) und die gelöschte 'Zeile' einfach nicht (oder eine leere hinzufügen).

Aber wie kann ich dann das Hilfs-Array zu data machen, also das Object[][] das die JTable füllt(wie gesagt die grösse der Arrays varriert)?
 
Das über ein Object[][] zu machen ist nicht unbedingt sinnvoll. Es gibt zwar Methoden um ein bestehendes in ein neues Array zu kopieren (System.arrayCopy) aber eine dynamsiche Struktur wie ein Vector wäre sicher angebrachter.

Überschreibe eine setValue und getValue (getColumnCount, getRowCount) dann kannst du wunderbar eine eigene dynamische Datenstruktur nutzen. Das DefaultTableModel benutzt z.B. auch Vectoren.
 
Zurück