qbe Geschrieben 23. September 2004 Geschrieben 23. September 2004 Servus! habe ein TableModel extends AbstractTableModel und ein JFrame mit der Tabelle und einem JButton. ich möchte bei einem Klick auf den Button eine neue Tabellenreihe anfügen. wie kann ich das realisieren? public class myTableModel extends AbstractTableModel { String[] columnNames = {"Nr","Name","Preis"}; Object[][] data = {{ new Integer(1), new String("was weiss ich"), new Double(2.78) }}; public String getColumnName(int column){ return columnNames[column]; } public int getColumnCount() { return columnNames.length; } public int getRowCount() { return data.length; } public Object getValueAt(int row, int column) { return data[row][column]; } public void setValueAt(Object obj, int row, int column){ data[row][column]=obj; fireTableDataChanged(); } public Class getColumnClass (int column){ if(column == 1)return String.class; else return Double.class; } } ein JFrame zur Anzeige der Tabelle : public class testFrame extends JFrame{ testFrame() { super("Tabelle"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Container p = getContentPane(); p.setLayout(new BorderLayout()); myTableModel model = new myTableModel(); JTable table = new JTable(model); JScrollPane scrollPane = new JScrollPane(); scrollPane.getViewport().add(table); JButton addData = new JButton("+"); p.add(BorderLayout.NORTH, addData); p.add(BorderLayout.CENTER, scrollPane); pack(); show(); } public static void main(String[] args) { new testFrame(); } } Zitieren
Peeter Geschrieben 23. September 2004 Geschrieben 23. September 2004 - einen actionListener auf den Button legen - in dieser Action einfach einen Vector mit der Anzahl der Spalten zusammen bauen - diesen Vector mit der Methode "addRow(Vector row)" dem TableModel hinzufügen. - fertig. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.