java.awt.dnd

接口
异常
java.lang.Object
  继承者 java.util.EventObject
      继承者 java.awt.dnd.DropTargetEvent
          继承者 java.awt.dnd.DropTargetDropEvent
所有已实现的接口:
Serializable

public class DropTargetDropEvent
     
extends DropTargetEvent

通过 DropTargetListener drop() 方法发送 DropTargetDropEvent

DropTargetDropEvent 报告源 drop 操作用户 drop 操作,这些操作反映了 drag-and-drop 操作的当前状态。

源 drop 操作DnDConstants 的位掩码,DnDConstants 表示受 drag-and-drop 操作的 drag 源支持的 drop 操作集合。

用户 drop 操作 取决于受 drag 源支持的 drop 操作和用户选定的 drop 操作。在进行 drag 操作中,用户可以通过按下修正键选择一个 drop 操作。

 
   Ctrl + Shift -> ACTION_LINK
   Ctrl         -> ACTION_COPY
   Shift        -> ACTION_MOVE
当用户选择一个 drop 操作时,如果此 drop 操作受 drag 源支持,则 用户 drop 操作 为表示选择的 drop 操作 DnDConstants 之一,如果此 drop 操作不受 drag 源支持,则用户 drop 操作为 DnDConstants.ACTION_NONE 之一。

如果用户没有选 drop 操作,则表示受 drag 源支持的 drop 操作集合的 DnDConstants 集合是先搜索 DnDConstants.ACTION_MOVE,然后搜索 DnDConstants.ACTION_COPY,最后搜索 DnDConstants.ACTION_LINK 而得到的,并且用户 drop 操作 是找到的第一个常量。如果找不到常量,则用户 drop 操作DnDConstants.ACTION_NONE

从以下版本开始:
1.2
另请参见:
序列化表格

字段摘要
 
从类 java.awt.dnd.DropTargetEvent 继承的字段
context
 
从类 java.util.EventObject 继承的字段
source
 
构造方法摘要
DropTargetDropEvent(DropTargetContext dtc, Point cursorLocn, int dropAction, int srcActions)
          在给出此操作的 DropTargetContextComponent 坐标中 drag Cursor 的热点位置、目前选择的用户 drop 操作和当前受源对象支持的操作集合的情况下,构造一个 DropTargetDropEvent
DropTargetDropEvent(DropTargetContext dtc, Point cursorLocn, int dropAction, int srcActions, boolean isLocal)
          在给出此操作的 DropTargetContextComponent 的坐标中 drag Cursor 的热点位置、目前选择的用户 drop 操作、当前受源对象支持的操作集合,以及一个指示源对象与目标对象是否在同一 JVM 中的 boolean 值的情况下,构造一个 DropTargetEvent
 
方法摘要
 void acceptDrop(int dropAction)
          使用指定的操作接受 drop。
 void dropComplete(boolean success)
          此方法通知 DragSource drop 传输已完成。
 DataFlavor[] getCurrentDataFlavors()
          此方法返回当前的 DataFlavor。
 List<DataFlavor> getCurrentDataFlavorsAsList()
          此方法以 java.util.List 形式返回当前可用的 DataFlavor
 int getDropAction()
          此方法返回用户 drop 操作。
 Point getLocation()
          此方法返回一个 Point,指示 Component 坐标中 Cursor 的当前位置。
 int getSourceActions()
          此方法返回源 drop 操作。
 Transferable getTransferable()
          此方法返回与 drop 相关的 Transferable 对象。
 boolean isDataFlavorSupported(DataFlavor df)
          此方法返回一个指示指定的 DataFlavor 是否可在源对象中使用的 boolean 值。
 boolean isLocalTransfer()
          此方法返回一个指示源对象与目标对象是否在同一 JVM 中的 int
 void rejectDrop()
          拒绝 Drop。
 
从类 java.awt.dnd.DropTargetEvent 继承的方法
getDropTargetContext
 
从类 java.util.EventObject 继承的方法
getSource, toString
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

构造方法详细信息

DropTargetDropEvent

public DropTargetDropEvent(DropTargetContext dtc,
                           Point cursorLocn,
                           int dropAction,
                           int srcActions)
在给出此操作的 DropTargetContextComponent 坐标中 drag Cursor 的热点位置、目前选择的用户 drop 操作和当前受源对象支持的操作集合的情况下,构造一个 DropTargetDropEvent。默认情况下,此构造器假定目标对象与源对象不在同一虚拟机中;也就是说, isLocalTransfer() 将返回 false

参数:
dtc - 此操作的 DropTargetContext
cursorLocn - Component 坐标中 "Drag" Cursor 的热点位置
dropAction - 用户 drop 操作。
srcActions - 源 drop 操作。
抛出:
NullPointerException - 如果 cursorLocn 为 null
IllegalArgumentException - 如果 dropAction 不是 DnDConstants 之一。
IllegalArgumentException - 如果 srcActions 不是 DnDConstants 的位掩码。
IllegalArgumentException - 如果 dtc 为 null

DropTargetDropEvent

public DropTargetDropEvent(DropTargetContext dtc,
                           Point cursorLocn,
                           int dropAction,
                           int srcActions,
                           boolean isLocal)
在给出此操作的 DropTargetContextComponent 的坐标中 drag Cursor 的热点位置、目前选择的用户 drop 操作、当前受源对象支持的操作集合,以及一个指示源对象与目标对象是否在同一 JVM 中的 boolean 值的情况下,构造一个 DropTargetEvent

参数:
dtc - 此操作的 DropTargetContext
cursorLocn - Component 坐标中 "Drag" Cursor 的热点位置
dropAction - 用户 drop 操作。
srcActions - 源 drop 操作。
isLocal - 如果源对象与目标对象在同一 JVM 中,则为 true
抛出:
NullPointerException - 如果 cursorLocn 为 null
IllegalArgumentException - 如果 dropAction 不是 DnDConstants 之一。
IllegalArgumentException - 如果 srcAction 不是 DnDConstants 的位掩码。
IllegalArgumentException - 如果 dtc 为 null
方法详细信息

getLocation

public Point getLocation()
此方法返回一个 Point,指示 Component 坐标中 Cursor 的当前位置。

返回:
Component 坐标中 Cursor 的当前位置。

getCurrentDataFlavors

public DataFlavor[] getCurrentDataFlavors()
此方法返回当前的 DataFlavor。

返回:
当前的 DataFlavor

getCurrentDataFlavorsAsList

public List<DataFlavor> getCurrentDataFlavorsAsList()
此方法以 java.util.List 形式返回当前可用的 DataFlavor

返回:
java.util.List 形式的当前可用 DataFlavor

isDataFlavorSupported

public boolean isDataFlavorSupported(DataFlavor df)
此方法返回一个指示指定的 DataFlavor 是否可在源对象中使用的 boolean 值。

参数:
df - 要测试的 DataFlavor

返回:
是否指定的 DataFlavor 是否可在源对象中使用

getSourceActions

public int getSourceActions()
此方法返回源 drop 操作。

返回:
源 drop 操作。

getDropAction

public int getDropAction()
此方法返回用户 drop 操作。

返回:
用户 drop 操作。

getTransferable

public Transferable getTransferable()
此方法返回与 drop 相关的 Transferable 对象。

返回:
与 drop 相关的 Transferable

acceptDrop

public void acceptDrop(int dropAction)
使用指定的操作接受 drop。

参数:
dropAction - 指定的操作

rejectDrop

public void rejectDrop()
拒绝 Drop。


dropComplete

public void dropComplete(boolean success)
此方法通知 DragSource drop 传输已完成。

参数:
success - 指示 drop 传输已完成的 boolean 值。

isLocalTransfer

public boolean isLocalTransfer()
此方法返回一个指示源对象与目标对象是否在同一 JVM 中的 int

返回:
Source 是否在同一 JVM 中