TableModel befüllen

Status
Nicht offen für weitere Antworten.

McSnoop

Bekanntes Mitglied
im FAQ steht zwar ne ganze menge, aber nirgends wird ein hinweis gegeben wie man nun die Daten reinbekommt in das Table model.

Ich habe ein Textfile aus dem ich Zeilenweise auslese und dann ";" als Trennzeichen die inhalte aussplitte.

Ich denk mal soweit sogut dürfte auch kein Fehler in der Überlegung stecken oder??

Aber wo schreibe ich ihm das hin das er den Vectorinhalt aus "Objecten" bekommen soll?? ???:L

im Model :
Code:
private String[] columnNames = {......};
private Object[][] data = {{...},{....},{...},{....}};

im FAQ steht da immer schon was drinnen in data. Wie bekomme ich da meine Werte rein bzw wo muss ich das im Model hinschreiben?? ???:L

im FAQ ist immer alles vordefiniert oder wird generiert.

Bin für jeden Tip dankbar. :bahnhof:

mfg
Snoop
 
ich weis , das habe ich ja auch schon durch und wie ich ja schon geschrieben habe sind die inhalte entweder fest definiert oder durch ne schleife generiert.

Aber wie sag ich dem

Object[][] data

es soll meine Werte bekommen??
 
McSnoop hat gesagt.:
ich weis , das habe ich ja auch schon durch und wie ich ja schon geschrieben habe sind die inhalte entweder fest definiert oder durch ne schleife generiert.

Aber wie sag ich dem

Object[][] data

es soll meine Werte bekommen??

:?:

Das JTable Tutorial hat gesagt.:
// Die Daten für das Table
String[][] data = new String[][]{
{"a", "b", "c", "d"},
{"e", "f", "g", "h"},
{"i", "j", "k", "l"}
};

// Die Column-Titles
String[] title = new String[]{
"A", "B", "C", "D"
};

// Das JTable initialisieren
JTable table = new JTable( data, title );
 
entweder erstelltst du das JTable erst wenn du die Daten hast. (dann weisst du was 'data' ist)
oder du veränderst das DataModel zur Laufzeit (wenn der User etwas ändert)
 
hmmm vielleicht stell ich mich auch zu doof an bei dem schildern meines Problems.

// Die Daten für das Table
String[][] data = new String[][]{
{"a", "b", "c", "d"},
{"e", "f", "g", "h"},
{"i", "j", "k", "l"}
};

// Die Column-Titles
String[] title = new String[]{
"A", "B", "C", "D"
};

// Das JTable initialisieren
JTable table = new JTable( data, title );


// Die Daten für das Table
String[][] data = new String[][]{
{"a", "b", "c", "d"}, <-------------- hier will ich meine Werte reinhaben
{"e", "f", "g", "h"}, <-------------- hier will ich meine Werte reinhaben
{"i", "j", "k", "l"} <-------------- hier will ich meine Werte reinhaben
};



[/quote]
 
wo ist den nda dein problem?? dui siehst da doch wie man arrays befüllt!! anstatt "a" setzt du halt "kartoffelsalat" oder "studies sind faul" oder was auch imemr du haben wilslt ein !?!?
 
Wenn man etwas runterscrollt kommt man im Tut auch zu Quellcode bei dem es z.B. ein Knopf "Reihe einfügen" hat...
 
dotlens hat gesagt.:
entweder erstelltst du das JTable erst wenn du die Daten hast. (dann weisst du was 'data' ist)
oder du veränderst das DataModel zur Laufzeit (wenn der User etwas ändert)

das

Object[][] data

wird doch erst zugänglich wenn

new TableModel

aufgerufen worden ist, oder??
 
:autsch: nein. die KTable generiert das model automatisch wenn du ihm keines übergibst.
 
ich verstehe das Problem nicht:
ändern kannst du den Wert ganz einfach mittels:
Code:
	public void setValueAt(Object aValue, int rows, int cols){
		data[rows][cols] = aValue;
		//GUI erneuern
		fireTableCellUpdated(rows, cols);
	}
und man weiss jawas drin ist wenn man eine Table generiert, also weisst du auch was in data drin stehen muss!!!!
 
also lass ich dann einfach die JTable erstellen gut.

Code:
DefaultTableModel model = new DefaultTableModel();
JTable table = new JTable(model);


model.insertrow(0,new Object[]{test});


wenn ich aber ihm kein Model übergebe wie sage ich ihm er soll das selbst generierte Model nehmen und dan
insertrow ausführen??
 
dotlens hat gesagt.:
ich verstehe das Problem nicht:
ändern kannst du den Wert ganz einfach mittels:
Code:
	public void setValueAt(Object aValue, int rows, int cols){
		data[rows][cols] = aValue;
		//GUI erneuern
		fireTableCellUpdated(rows, cols);
	}
und man weiss jawas drin ist wenn man eine Table generiert, also weisst du auch was in data drin stehen muss!!!!

mein Problem ist das ich noch nichts in data drinnen habe und da den inhalt meines textfiles irgendwie reinbekommen will.

JTable hab ich, Textfile hab ich.

eine Variante wäre ja:

JTable erstellen und dann zeilenweise einfügen, wo ich wieder beim Model wäre wo ja


Object [][] data = ?????? schon drinnen ist ich es aber ja da nicht füllen kann


2te:

irgendwie data füllen und dann JTable erstellen lassen oder??
 
du kannst irgendwo ein objekt data anlegen (muss nicht so heissen) und dann mit:
Code:
JTable jt = new JTable(data);
deine JTable generieren lassen (mit Daten)
benis FAQ hat gesagt.:
Code:
// Die Daten für das Table
      String[][] data = new String[][]{
            {"a", "b", "c", "d"},
            {"e", "f", "g", "h"},
            {"i", "j", "k", "l"}
      };
      
      // Die Column-Titles
      String[] title = new String[]{
            "A", "B", "C", "D"
      };
      
      // Das JTable initialisieren
      JTable table = new JTable( data, title );
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben