检测JTable行中对象的策略?

时间:2009-03-13 00:42:42

标签: java sorting jtable

这就是:由JTableModel支持的可排序JTable,其中包含一个填充行的对象数组(一个对象=一行)。需要删除行。

没有排序,删除对象很简单:获取选定的行索引,删除同一索引下的数组对象。但是,通过排序,行索引在某种意义上会陷入混乱,因为它们不再与后备数组对象索引匹配。克服这个问题的正确方法是什么?

2 个答案:

答案 0 :(得分:6)

奥斯卡几乎是正确的,这是应该如何做的:

int selectedRow = table.getSelectedRow();
tableModel.removeRow(table.convertRowIndexToModel(selectedRow));

答案 1 :(得分:3)

我认为(不太确定)有一个像“modelToView”这样的方法,它返回视图索引所代表的模型中的实际索引。

所以,例如你有A,B,C,D然后你排序desc。 D,C,B,A此方法将为视图索引3(A)返回0

我认为这是在支持排序的JXTable或Java 6中的JTable。

如果您构建了自我排序,请考虑添加此方法。