删除选定的 JTable 元素
Removing selected JTable elements
在 ArrayList 上按下按钮时,应选择和删除 table 中的几个项目。但只有一项被删除。
for (int i = 0; i < Table.getRowCount(); i++) {
if (Table.isRowSelected(i)) {
TableData.remove(i);
}
}
Table.setModel(new DemoTableModel(TableData));
您不应从 ArrayList 中删除数据。
ArrayList 可用于将数据加载到 DefaultTableModel
,但在将 TableModel 添加到 table 后,对数据的所有更改都应通过 DefaultTableModel
完成。
所以在你的情况下你会使用:
model.removeRow(...)
DefaultTableModel 的方法。
有关从 DefaultTableModel 中删除所有选定行的工作示例,请参阅:。
如果您使用的是自定义 TableModel,则自定义模型应实现 removeRow(...)
方法。有关使用 ArrayList 保存数据创建自定义 TableModel 的分步示例,请参阅 Row Table Model。它展示了如何实现 "remove row" 方法。
在 ArrayList 上按下按钮时,应选择和删除 table 中的几个项目。但只有一项被删除。
for (int i = 0; i < Table.getRowCount(); i++) {
if (Table.isRowSelected(i)) {
TableData.remove(i);
}
}
Table.setModel(new DemoTableModel(TableData));
您不应从 ArrayList 中删除数据。
ArrayList 可用于将数据加载到 DefaultTableModel
,但在将 TableModel 添加到 table 后,对数据的所有更改都应通过 DefaultTableModel
完成。
所以在你的情况下你会使用:
model.removeRow(...)
DefaultTableModel 的方法。
有关从 DefaultTableModel 中删除所有选定行的工作示例,请参阅:
如果您使用的是自定义 TableModel,则自定义模型应实现 removeRow(...)
方法。有关使用 ArrayList 保存数据创建自定义 TableModel 的分步示例,请参阅 Row Table Model。它展示了如何实现 "remove row" 方法。