hi
ja, ich hab die forumsuche und google usw verwendet aber komm dennoch nicht weiter. ich hab einen einfachen jtable der regelm. aktualisiert (updateTable()) werden soll. der table wir in einem jframe angezeigt. weiters verwende ich tabelmodel.
frame mit table
tabelmodel
die daten werden zwar geladen, aber NICHT angezeigt; sprich die tabelle bleibt immer gleich
hab update(), repaint(), neues tabelmodel erzeugen und der tabelle übergeben usw. versucht - funktioniert nicht.
warum? was mach ich falsch bzw. wo finde ich hilfe?
danke
ja, ich hab die forumsuche und google usw verwendet aber komm dennoch nicht weiter. ich hab einen einfachen jtable der regelm. aktualisiert (updateTable()) werden soll. der table wir in einem jframe angezeigt. weiters verwende ich tabelmodel.
frame mit table
Code:
public class TerminTable2 extends JPanel {
private TerminTableModel2 tm= null;
public TerminTable2(){
tm = new TerminTableModel2();
JTable table = new JTable(tm);
table.setPreferredScrollableViewportSize(new Dimension(500, 70));
table.setFillsViewportHeight(true);
JScrollPane scrollPane = new JScrollPane(table);
add(scrollPane);
}
public void updateTable(){
tm.loadData();
System.out.println("===============update=================");
}
public static void createAndShowGUI() {
JFrame frame = new JFrame("TableDemo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
TerminTable2 newContentPane = new TerminTable2();
newContentPane.setOpaque(true); //content panes must be opaque
frame.setContentPane(newContentPane);
frame.pack();
frame.setVisible(true);
}
}
tabelmodel
Code:
public class TerminTableModel2 extends AbstractTableModel {
private Hashtable terminHash;
private Object[][] data;
private String[] columnNames = {"zeit", "kunde"};
public TerminTableModel2(){
loadData();
}
public void loadData(){
int i= 0;
terminHash = Terminverwaltung.getInstance().getTerminHash();
data = new Object[terminHash.size()][2];
for ( Enumeration e = terminHash.elements(); e.hasMoreElements(); )
{
Termin termin = (Termin)e.nextElement();
data[i][0]=termin.getZeitakt();
data[i][1]=termin.getName();
i++;
}
fireTableDataChanged();
fireTableStructureChanged();
}
...
}
hab update(), repaint(), neues tabelmodel erzeugen und der tabelle übergeben usw. versucht - funktioniert nicht.
warum? was mach ich falsch bzw. wo finde ich hilfe?
danke