如何在特定的索引处插入一个空行来排序jtable?
问题描述:
我有以下的jtable按sortKey列升序排序。如何在特定的索引处插入一个空行来排序jtable?
row# col1 col2 col3 sortKey
1 a b c 1
2 d e f 2
3 g h i 3
我已经使用TableRowSorter对这个JTable进行排序。 现在我想在行#1和行#2之间插入一个空行,结果应该看起来像。
row# col1 col2 col3 sortKey
1 a b c 1
2
3 d e f 2
4 g h i 3
而是我得到这样
row# col1 col2 col3 sortKey
1
2 a b c 1
3 d e f 2
4 g h i 3
结果如何解决空行到该表中的位置时,将垃圾分类?
答
如果你有一个JTable
与RowSorter
并添加/插入一个新行,该行显示在由RowSorter
确定的位置。因此,如果在您的示例中插入了空行(因此为空值),则该行将显示在第一个位置,因为“null”小于“1”。
如果你想在不同的位置,以显示它,你有两个选择:
您提供列SORTKEY一个适当的值(上插入行)。如果你想在你的示例中使用整数值作为排序键,并且想要在排序键为“1”和“2”的行之间显示一行,那么必须给新行赋值“2”并调整排序键值以下所有行。
您可以致电
table.setRowSorter (null)
停用排序。请记住,在使用行分拣机再次呼叫table.setRowSorter
后,重新激活排序。
重复这一个: http://stackoverflow.com/questions/16970675/how-do-i-add-an-empty-row-to-jtable – blipman17
@ blipman17:什么你认为这些问题是否与这个问题重复?这些是完全不同的问题man ...可能有数百个关于向jtable添加空行的问题,但是告诉我如何使用排序后的表进行处理。 – Nadeem
如果你有自己的'TableRowSorter',只要确保它对空行使用正确的位置 – Robin