我需要为我正在处理的项目添加多选功能。 到目前为止SelectionChangedlistener
被使用,但是没有选择多选。如何使用CTRL键为TreeViewer启用多选功能
是否有任何支持Ctrl-click选择的侦听器类型,我可以在这里添加?
这将是我目前最好的选择。
我需要为我正在处理的项目添加多选功能。 到目前为止SelectionChangedlistener
被使用,但是没有选择多选。如何使用CTRL键为TreeViewer启用多选功能
是否有任何支持Ctrl-click选择的侦听器类型,我可以在这里添加?
这将是我目前最好的选择。
为了能够多选,与SWT.MULTI
风格标志创建树查看器,
例如:
TreeViewer viewer = new TreeViewer(parent, SWT.MULTI);
的ISelectionChangedListener
将在单选和多选通知。所选元素保存在SelectionChangedEvent::getSelection
。
请参见下面的代码,提取所有选定的元素选择的监听器:
ISelectionChangedListener listener = new ISelectionChangedListener() {
@Override
public void selectionChanged(SelectionChangedEvent event) {
IStructuredSelection selection = (IStructuredSelection)event.getSelection();
List<?> selectedElements = selection.toList();
}
};
如果你的目标的4.8版本RCP平台和更高版本,您还可以使用event.getStructuredSelection()
省得自己投。例如:
ISelectionChangedListener listener = new ISelectionChangedListener() {
@Override
public void selectionChanged(SelectionChangedEvent event) {
IStructuredSelection selection = event.getStructuredSelection();
List<?> selectedElements = selection.toList();
}
};
是的,但我如何设置CTRL键作为决定因素在这种情况下? 我的意思是让选择真的发生 –
@MadalinBranea一旦使用了SWT.MULTI,Ctrl + Click应该可以工作(除非你在使用macd的时候是Cmd + Click) –
啊是的,谢谢 –