J
Johann
Gast
Ich hab folgendes Problem:
ich habe eine Hauptklsse in der ich eine JTable mit eigenem Modell initialisiere (die JTable bezieht ihre Daten aus einem ArrayList
in der auch ein button zum erweitern der Tabellendaten eingefügt ist:
Die Daten aus ArrayList(inhalt) sind "global" in einer eigenen Klasse abgespeichert (SingletonDesign)
Das Table Model sieht folgendermaßen aus:
Meine Frage : wie kann ich aus meiner Hauptklasse aus dem ActionListener(eigeneMethode) die Tabelle so neu zeichnen lassen, dass sie genauso dynamisch wie meine ArrayList ist aus der sie aufgebaut ist ???
Ich denke das wird irgendwie mit firetablecellupdate gehen hab das aber noch nicht hinbekommen....
Danke schonmal im Voraus
Gruß Johann (wenn ihr fragen zu meinem Code habt schreibt einfach ich hab hier sehr vereinfacht....)
ich habe eine Hauptklsse in der ich eine JTable mit eigenem Modell initialisiere (die JTable bezieht ihre Daten aus einem ArrayList
in der auch ein button zum erweitern der Tabellendaten eingefügt ist:
Code:
...
private ArrayList inhalt;
private JTable adresstabelle = new JTable(new JTableModel());
public HauptKlasse()
{
JScrollPane scroll = new JScrollPane();
scroll.getViewport().add(adresstabelle);
JButton hinzufuegen = new JButton(hinzufügen);
}
{public void actionPerformed(ActionEvent actionEvent)
{
if (actionEvent.getSource().equals(_hinzufuegen))
{inhalt.add //hier wird mittles schleife aus mehreren textfeldern ausgelesen)
}
Die Daten aus ArrayList(inhalt) sind "global" in einer eigenen Klasse abgespeichert (SingletonDesign)
Das Table Model sieht folgendermaßen aus:
Code:
public class JTableModel extends AbstractTableModel
{
final private String TABELLENSPALTEN[] =
{ "A","C" usw...}
public int getRowCount()
{
return inhalt.size()/7;
}
public int getColumnCount()
{
return TABELLENSPALTEN.length;
}
public Object getValueAt(int row, int col)
{ zaehler = inhalt.size() /7;
for (int reihenVar = 0; reihenVar < zaehler; reihenVar++)
{
for (int spaltenVar = 0; spaltenVar < 7; spaltenVar++)
{
if (col == spaltenVar)
{
if (row == reihenVar)
{
try
{
return inhalt.get(7 * reihenVar + spaltenVar);
}
catch (RuntimeException e)
{
return "";
}
}
}
}
}
return "";
}
}
Meine Frage : wie kann ich aus meiner Hauptklasse aus dem ActionListener(eigeneMethode) die Tabelle so neu zeichnen lassen, dass sie genauso dynamisch wie meine ArrayList ist aus der sie aufgebaut ist ???
Ich denke das wird irgendwie mit firetablecellupdate gehen hab das aber noch nicht hinbekommen....
Danke schonmal im Voraus
Gruß Johann (wenn ihr fragen zu meinem Code habt schreibt einfach ich hab hier sehr vereinfacht....)