有没有办法在 SWT Table 排序后删除排序?
Is there a way to remove the sort after an SWT Table is sorted?
我有一个 Table
和 TableViewer
被设置为 ViewerComparator
:
this.viewer.setComparator( this.comparator );
现在我正在查看我的 table。我单击列 header。 table 对该行进行排序。我再次单击该列 header,它按另一个方向排序。我单击不同的列 header,排序切换到新列。这很好用。
我的问题是是否有办法取消排序。这意味着去掉我单击的 header 列顶部的排序箭头,已排序列元素的灰色背景将消失,数据将恢复为原始顺序。我愿意在某处添加某种按钮来启动此命令。
这可能吗?
Table
的排序指标和TableViewer
使用的比较器实际上是独立的。
要删除排序指示符,请调用 table.setSortDirection( SWT.NONE )
。要删除比较器,请调用 viewer.setComparator( null )
.
您可以让用户在选择 header 列时在 UP
、DOWN
、NONE
之间切换,或者提供一个额外的 UI 元素来重置排序。
我有一个 Table
和 TableViewer
被设置为 ViewerComparator
:
this.viewer.setComparator( this.comparator );
现在我正在查看我的 table。我单击列 header。 table 对该行进行排序。我再次单击该列 header,它按另一个方向排序。我单击不同的列 header,排序切换到新列。这很好用。
我的问题是是否有办法取消排序。这意味着去掉我单击的 header 列顶部的排序箭头,已排序列元素的灰色背景将消失,数据将恢复为原始顺序。我愿意在某处添加某种按钮来启动此命令。
这可能吗?
Table
的排序指标和TableViewer
使用的比较器实际上是独立的。
要删除排序指示符,请调用 table.setSortDirection( SWT.NONE )
。要删除比较器,请调用 viewer.setComparator( null )
.
您可以让用户在选择 header 列时在 UP
、DOWN
、NONE
之间切换,或者提供一个额外的 UI 元素来重置排序。