如何在Java SWT中的dragEnter期间获取源组件

时间:2015-08-07 16:56:29

标签: java drag-and-drop swt

我想创建以下工作流程:

  1. 有两种类型的盒子(A和B)和两种类型的篮子(C和D)。
  2. 两种类型的盒子都可以拖放到基于C。
  3. 但是只有A型的盒子可以在D中拖放。
  4. 我想在DropTargetListener中的dragEnter事件期间检测框的类型(A或B),以便我可以将光标更改为DROP_NONE。

    但是现在我所能做的就是在实际掉落事件中检测它,如果它与篮子不相容则扔掉它。

    请指导我如何解决这个问题。

    注意:我使用的是SWT org.eclipse.swt.dnd框架。

    片段:

    我想做这样的事情:

    target

1 个答案:

答案 0 :(得分:1)

您可以创建一个静态变量来保留当前拖动源。 您在dragStart中对其进行了设置,并在dragFinished中将其设为空。 然后在dragEnter和其他事件中使用它来进行评估。