我希望用户能够通过单击列标题随时对TreeViewer
进行排序。但是我不知道这样做的正确方法。
我发现我们可以使用ViewerComparator
来排序不同的元素。但是,我不知道如何将侦听器设置为能够正确升序或降序排序。
有没有办法让JROace库自动使用ARROW让用户在列排序中选择降序或升序?
此致 沃尔多
答案 0 :(得分:3)
这不是真的自动。
您需要调用TreeColumn.addSelectionListener
添加选择侦听器来处理树列标题上的点击。
然后,您需要使用
从Tree
获取TreeViewer
Tree tree = viewer.getTree();
然后致电
tree.setSortColumn(treeColumn);
设置指示的主排序列和
tree.setSortDirection(SWT.UP) // or SWT.DOWN
设置指示的排序方向。
呼叫
viewer.refresh();
让观众重做排序。
您需要跟踪要在比较器中进行排序的列。