我需要爲我正在處理的項目添加多選功能。 到目前爲止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) –
啊是的,謝謝 –