Java 排序JFace Treeviewer多列
我希望用户可以随时通过单击列标题对Java 排序JFace Treeviewer多列,java,eclipse-plugin,eclipse-rcp,jface,Java,Eclipse Plugin,Eclipse Rcp,Jface,我希望用户可以随时通过单击列标题对TreeViewer进行排序。但是我不知道该怎么做 我发现我们可以使用ViewerComparator对不同的元素进行排序。但是,我不知道如何设置侦听器,使其能够正确地进行升序或降序排序 有没有一种方法可以使用JFace库自动设置箭头,让用户在列排序中选择降序或升序 问候,, 沃尔多这不是自动的 您需要调用TreeColumn.addSelectionListener来添加一个选择侦听器,以处理对树列标题的单击 然后,您需要使用从TreeViewer获取树 Tr
TreeViewer
进行排序。但是我不知道该怎么做
我发现我们可以使用ViewerComparator
对不同的元素进行排序。但是,我不知道如何设置侦听器,使其能够正确地进行升序或降序排序
有没有一种方法可以使用JFace库自动设置箭头,让用户在列排序中选择降序或升序
问候,,
沃尔多这不是自动的 您需要调用
TreeColumn.addSelectionListener
来添加一个选择侦听器,以处理对树列标题的单击
然后,您需要使用从TreeViewer
获取树
Tree tree = viewer.getTree();
然后打电话
tree.setSortColumn(treeColumn);
设置指示的主排序列和
tree.setSortDirection(SWT.UP) // or SWT.DOWN
设置指示的分拣方向
召唤
使查看器重新进行排序
您需要在比较器中跟踪要排序的列。哦,谢谢。我有点做了,只是我没有直接使用setSortColumn和setSortDirection,它正在工作,但它最好按照您的方式来做。
viewer.refresh();