我需要该表来显示所有行,但是只显示最后一个低位。

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应该包含整个表的数据。因此,在循环之前创建一个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);

关于java - JTable中仅显示最后一行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32062663/

10-12 12:46
查看更多