我使用一个 HashMap 来填充一个 JTable,它或多或少地不断更新:
public Map< Long, MyObject > tableData = new HashMap< Long, MyObject >();
每次将新元素添加到地图时,都会通知表模型:
tableData.put(id, anObject);
AbstractTableModel atm = (AbstractTableModel)model;
atm.fireTableDataChanged();
此外,我有一个 TableRowSorter,它根据特定标准对行进行排序:
TableRowSorter<TableModel> sorter = new TableRowSorter<TableModel>(model);
.
.
.
table.setRowSorter(sorter);
我的目标是(垂直)滚动条总是跳到最后添加的行,它可能在表格中间的某个地方,因为排序器可能使用这个:
table.scrollRectToVisible(table.getCellRect(row,0, true));
问题是我不知道该行的索引:) 我在哪里可以获取这个索引?