我的应用程序中有2个视图。在其中一个视图中,我可以看到包含自定义元素的TreeStructure(例如MDocument,MVersion ......)。
我希望能够将MVersion类型的项目从我的视图拖到另一个,但我不知道如何声明传输类型或检查所选项目是否是受支持的类型。
有什么想法吗?
答案 0 :(得分:7)
最简单的方法是使用LocalSelectionTransfer
。向观众添加拖放支持后......
您可以设置ISelection
方法中拖动的DragSourceListener.dragStart()
:
LocalSelectionTransfer.getTransfer().setSelection(selection);
在DropTargetListener.drop()
中,检查是否支持该类型并检索选择:
if (LocalSelectionTransfer.getTransfer().isSupportedType(event.currentDataType))
ISelection sel = LocalSelectionTransfer.getTransfer().getSelection();
...