初始化后更改DefaultTableModel中的行数

时间:2014-07-21 18:10:56

标签: java swing defaulttablemodel

我正在尝试实例化DefaultTableModel,但我不知道在最初创建对象时需要多少行。有一个" Read"用户按下的按钮,在完成后我想要用读取的数据更新表格。所以基本上,当程序启动时,我创建一个带有空数据的新DefaultTableModel

DefaultTableModel tableModel = new DefaultTableModel(null, columnNames);

我还试过用0行初始化:

DefaultTableModel tableModel = newDefalutTableModel(columnNames, 0);

现在我按下"阅读"按钮,它触发我的一个对象上的动作侦听器,并使用我现在拥有的数据更新表。我怎么能做到这一点?

2 个答案:

答案 0 :(得分:0)

你可以这样做:

String[] columnNames = new String[]{"dataHeader1", "dataHeader2"};
DefaultTableModel tableModel = new DefaultTableModel(); 
tableModel.setColumnIdentifiers(columnNames);

如果您有数据,可以使用:

String[] columnNames = new String[]{"dataHeader1", "dataHeader2"};
DefaultTableModel tableModel = new DefaultTableModel();


//you can do a for loop here...
Object[][] data= new Object[5][columnNames.length];
data[0][0] = "";
data[0][1] = "";

data[1][0] = "";
data[1][1] = "";
...

tableModel.setDataVector(data, columnNames);

答案 1 :(得分:0)

  

但我不知道我需要多少行

然后为您阅读的每一行数据创建一个Vector。然后你可以使用:

model.addRow(...);