默认情况下,如果您在 JTable 的行排序器中有多个 SortKey,则每次单击列标题都会使该列的 SortKey 成为主要的。
我需要更改此行为,以便第一次单击列标题使该 SortKey 成为主要的,单击另一个列标题将使该列的 SortKey 成为次要的,依此类推。
此外,当达到 maxSortKeys 时,单击另一个(未排序的)列将触发排序键的改组。新单击的列将具有最低优先级的 SortKey,主键列将失去其 SortKey,具有辅助 SortKey 的列将成为主键,等等。
目前,我实现了自己的 TableHeader 以便在用户单击列标题时捕获事件,以便适当地打乱 SortKeys。
用一个例子来说明它:
[ One | Two ↑1 | Three ↓2 | Four | Five ↑3 ]
[ | | | | ]
用户单击第一列的标题后:
[ One ↑3 | Two | Three ↓1 | Four | Five ↑2 ]
[ | | | | ]
我想知道您是否认为这是一个好方法?