在排序列后尝试预览行时遇到问题。
例如: 在排序之前这是我的表
当我尝试按第二列排序时,我得到的结果是正常的:
但是当我尝试使用ID(A199)预览第二行的细节时,我得到(A195)的那些,它之前是排序前的第二行。 (我在双击行时添加了一个操作来预览行详细信息)
所以我的假设是表模型没有正确更新,这就是我尝试过的:
TableRowSorter<PersonneMoraleSearchTableModel> sorter = new TableRowSorter<PersonneMoraleSearchTableModel>(model);
jTable.setRowSorter(sorter);
List<RowSorter.SortKey> sortKeys = new ArrayList<SortKey>(25);
sortKeys.add(new RowSorter.SortKey(1, SortOrder.ASCENDING));
sorter.setSortKeys(sortKeys);
sorter.setSortsOnUpdates(true);
任何帮助将不胜感激!
答案 0 :(得分:1)
由于the doc says TableRowSorter
只关心视图而不关心表的模型。
在doc的描述中使用了一些函数来转换模型和视图之间的索引,以防使用排序/过滤功能(如你的情况)。
尝试更改ActionListener
以使用这些功能,问题应该解决。