有没有办法在SWT表排序后删除排序?

时间:2015-01-26 21:59:28

标签: java swt tableviewer

我有TableTableViewer设置为ViewerComparator

this.viewer.setComparator( this.comparator );

现在我在看我的桌子。我点击列标题。该表对该行进行排序。我再次点击该列标题,然后在另一个方向排序。我点击不同的列标题,排序切换到新列。这很好用。

我的问题是,是否有办法删除排序。这意味着摆脱我单击的列标题顶部的排序箭头,排序列的元素上的灰色背景将消失,数据将返回其原始顺序。我愿意在某处添加某种按钮来启动此命令。

这可能吗?

1 个答案:

答案 0 :(得分:4)

Table排序指标和TableViewer使用的比较器实际上是独立的。

要删除排序指示符,请致电table.setSortDirection( SWT.NONE )。要删除比较器,请致电viewer.setComparator( null )

您可以让用户在选择列标题时切换UPDOWNNONE,或者提供额外的UI元素来重置排序。