JTable 中只显示最后一行
Only last row is shown in JTable
我需要 table 来显示所有行,但它只显示最后一个低点。
for (i = 0; i < links.size(); i++) {
Object row[] = {links.get(i).getAttribute("href"), statusCode};
final Object rowData[][] = {row};
final Object columnNames[] = {"Link", "Status Code"};
DefaultTableModel listTableModel = new DefaultTableModel(rowData, columnNames);
resultTable.setModel(listTableModel);
}
我该怎么办?我不太擅长编程。还在学习中。
在循环遍历行时,您正在为每一行创建一个 new DefaultTablemodel
,然后在执行 resultTable.setModel()
时替换前一个。但是 TableModel
应该包含整个 table 的数据。所以在循环之前创建一个 TableModel
并像这样添加每一行:
//create TableModel
final Object columnNames[] = {"Link", "Status Code"};
DefaultTableModel listTableModel = new DefaultTableModel(columnNames,0);
//fill the TableModel
for (i = 0; i < links.size(); i++) {
Object row[] = {links.get(i).getAttribute("href"), statusCode};
listTableModel.addRow(row)
}
//associate the model with the table
resultTable.setModel(listTableModel);
我需要 table 来显示所有行,但它只显示最后一个低点。
for (i = 0; i < links.size(); i++) {
Object row[] = {links.get(i).getAttribute("href"), statusCode};
final Object rowData[][] = {row};
final Object columnNames[] = {"Link", "Status Code"};
DefaultTableModel listTableModel = new DefaultTableModel(rowData, columnNames);
resultTable.setModel(listTableModel);
}
我该怎么办?我不太擅长编程。还在学习中。
在循环遍历行时,您正在为每一行创建一个 new DefaultTablemodel
,然后在执行 resultTable.setModel()
时替换前一个。但是 TableModel
应该包含整个 table 的数据。所以在循环之前创建一个 TableModel
并像这样添加每一行:
//create TableModel
final Object columnNames[] = {"Link", "Status Code"};
DefaultTableModel listTableModel = new DefaultTableModel(columnNames,0);
//fill the TableModel
for (i = 0; i < links.size(); i++) {
Object row[] = {links.get(i).getAttribute("href"), statusCode};
listTableModel.addRow(row)
}
//associate the model with the table
resultTable.setModel(listTableModel);