Model umbauen ?

  • Themenstarter Themenstarter Hannes.BWL
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
H

Hannes.BWL

Gast
Ich hab ein TableModel was genau ein Wert anzeigen kann wenn das Programm läuft. Ich möchte aber das weitere Werte (also Zeilen) dazukommen können während des Programmablaufes.

z.B.
342
(wenn dann was passiert neuer Wert hinzu - das kann auch erst nach 5 min passieren)
524
..
..
.

So sieht mein Table Model bis jetzt aus

Code:
public class TableModel extends AbstractTableModel	{ // Klasse erweitert AbstractTableModel
    protected String[] columnNames = new String[] {"Nummer"};
    protected Class[] columnClasses = new Class[] {String.class};
  
    Object [] nummer={Datenuebergabe.getInstance().gettelefonnummer()};
   
    public int getColumnCount() {
        return columnNames.length;
    }
    	
    public int getRowCount() {
        return nummer.length;
    }
    	
    public String getColumnName(int col) {
    	return columnNames[col];
    }	

    public Class getColumnClass(int col) {
    	return columnClasses[col];
    }	

    public Object getValueAt(int row, int col) { 
        switch (col) {
    		case 0:
    		    //speicherstring.toString().concat(datum[row].toString());
    		    return nummer[row];
    		
    		default:
    		    return null;
        }
    }
}

Muss ich das im Model einstellen wenn weitere Werte in Table eingetragen werden sollen oder wo?
 
Weil eigentlich mein Table mehrere Spalten hat aber zum Verständniss der Models man ja die anderen Spalten auch weglassen kann.
 
Ok... verstehe.

Dann brauchst Du eine Methode, die Dir dein Model neu erstellt (nummer=....) und dann rufst Du die Methode 'fireTableDataChanged' auf.
 
Ah verstehe nach jeder neuen Nummer die dazu kommt muss das Model neu erstellt werden. Aber wenn ich das Model neu Aufrufe bzw. erstelle und dann die neue Nummer reinschreibe ist doch die alte(n) verschwunden?
 
Naja eigentlich werden nur die Daten erneuert. Ich stelle mir das so vor

erster Aufruf bringt ein Object[] der Länge 1 zurück (=1 Zeile)
zweiter Aufruf bringt ein Object[] der Länge 2 zurück (= Zeilen)
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben