java.awt.dnd

接口
异常
所有超级接口:
EventListener
所有已知实现类:
DragSourceAdapter, DragSourceContext

public interface DragSourceListener
     
extends EventListener

DragSourceListener 定义了事件接口,Drag 和 Drop 操作的始发端使用它来跟踪用户操作的状态,并通过 Drag 和 Drop 操作为用户提供合适的“拖动结束”反馈。

放置点是与上一次 dragEnter() 调用相关联 的,前提是在此侦听器上最后一次调用 dragEnter() 满足以下条件:

  • 对应于该放置点,并且
  • 随后没有在此侦听器上调用 dragExit()

从以下版本开始:
1.2

方法摘要
 void dragDropEnd(DragSourceDropEvent dsde)
          调用此方法来通知 Drag 和 Drop 操作已完成。
 void dragEnter(DragSourceDragEvent dsde)
          光标的热点进入放置点(与平台相关)时调用该方法。
 void dragExit(DragSourceEvent dse)
          光标的热点离开放置点(与平台相关)时调用该方法。
 void dragOver(DragSourceDragEvent dsde)
          光标的热点在放置点(与平台相关)上移动时调用该方法。
 void dropActionChanged(DragSourceDragEvent dsde)
          当用户修改放置操作时调用该方法。
 

方法详细信息

dragEnter

void dragEnter(DragSourceDragEvent dsde)
光标的热点进入放置点(与平台相关)时调用该方法。满足以下所有条件时调用此方法:
  • 光标的热点进入与平台相关的放置点的可操作部分。
  • 放置点处于激活状态。
  • 放置点接受该拖动。

参数:
dsde - DragSourceDragEvent

dragOver

void dragOver(DragSourceDragEvent dsde)
光标的热点在放置点(与平台相关)上移动时调用该方法。满足以下所有条件时调用此方法:
  • 光标的热点已移动,但是仍旧处于和上一次调用 dragEnter() 相关联的放置点可操作部分内。
  • 放置点仍处于激活状态。
  • 放置点接受该拖动。

参数:
dsde - DragSourceDragEvent

dropActionChanged

void dropActionChanged(DragSourceDragEvent dsde)
当用户修改放置操作时调用该方法。当用户使用的输入设备状态改变时调用此方法。这种设备通常是与用户交互的鼠标按键或键盘修改键。

参数:
dsde - DragSourceDragEvent

dragExit

void dragExit(DragSourceEvent dse)
光标的热点离开放置点(与平台相关)时调用该方法。满足以下任一条件时调用此方法:
  • 光标的热点不再处于和上一次调用 dragEnter() 相关联的放置点可操作部分内。
或者
  • 与上一次调用 dragEnter() 相关联的放置点不再处于激活状态。
或者
  • 与上一次调用 dragEnter() 相关联的放置点拒绝该拖动。

参数:
dse - DragSourceEvent

dragDropEnd

void dragDropEnd(DragSourceDropEvent dsde)
调用此方法来通知 Drag 和 Drop 操作已完成。可以使用 DragSourceDropEvent 的 getDropSuccess() 方法来确定终止状态。放置点所选择的操作由 getDropAction() 方法返回,并应用到 Drop 操作中。一旦此方法完成,则当前的 DragSourceContext 和关联的资源就变为无效。

参数:
dsde - DragSourceDropEvent