jtable durch button-click befüllen

f_l_o

Grünschnabel
hallo allerseits,

ich habe hier im forum schon einige ältere themen durchsucht, aber leider wirklich eine lösung für mein problem gefunden (vergebt mir, falls ich etwas übersehen habe :) ).
und zwar will ich eine jtable mit daten aus einer arraylist befüllen. das ganze soll auf knopfdruck (jbutton) in meiner maske geschehen. also vorher soll die table leer sein und auf buttonclick dann eben mit verschieden vielen zeilen (je nach inhalt der arraylist) befüllt werden.
ich habe eine jtable erstellt (na no na) und nachdem ich langsam kapiert habe, dass das ganze doch nicht so einfach ist dann ein tablemodel dazugefügt/verwendet, das ich auf der oracle seite gefunden habe (http://download.oracle.com/javase/t...ableDemoProject/src/components/TableDemo.java).
aber iwie funktioniert das leider noch immer nicht bzw ich kapiere nicht, wie ich meine anfangs leere tabelle dann (per button-click) mit beliebig vielen zeilen befüllen kann.

ich hoffe, mir kann jemand weiterhelfen :)

danke lg
 
Wie sieht der Inhalt deiner ArrayList aus? Enthält diese z.B. eine eigene Klasse oder wiederum ein Array/eine Liste?

Ich geh' mal davon aus, dass du ein DefaultTableModel verwendest, bzw. ich würde es empfehlen:
Wichtig ist, das DefaultTableModel bietet 2 einfache Möglichkeiten eine Reihe hinzuzufügen...

A) erst die Werte holen, dann die Zeile hinzufügen (Beispiel: http://www.easy-coding.de/wiki/java/jtable-mit-defaulttablemodel-als-datenquelle.html)
void addRow(Object[] rowData)
Adds a row to the end of the model.
void addRow(Vector rowData)
Adds a row to the end of the model.
Du müsstest deine Werte in eins dieser beiden Formate bringen.

B) erst die Zeile hinzufügen, dann die Werte holen
int getRowCount()
Returns the number of rows in this data table.
void setRowCount(int rowCount)
Sets the number of rows in the model.

void setValueAt(Object aValue, int row, int column)
Sets the object value for the cell at column and row.
 
Zuletzt bearbeitet:
Zurück