模块 java.desktop

类 DropTargetDragEvent

所有已实现的接口:
Serializable

public class DropTargetDragEvent extends DropTargetEvent
DropTargetDragEvent 通过其 dragEnter() 和 dragOver() 方法传送到 DropTargetListener

DropTargetDragEvent 报告源丢弃操作用户放下动作反映拖动操作的当前状态。

源丢弃操作DnDConstants 的按位掩码,表示此拖动操作的拖动源支持的放置操作集。

用户放下动作取决于拖动源支持的拖放动作和用户选择的拖放动作。用户可以在拖动操作期间通过按修改键来选择放置操作:

  Ctrl + Shift -> ACTION_LINK
  Ctrl     -> ACTION_COPY
  Shift    -> ACTION_MOVE
 
如果用户选择了放下操作,则用户放下动作如果拖动源支持此放置操作,则为 DnDConstants 之一,如果拖动源不支持此放置操作,则为 DnDConstants.ACTION_NONE 之一。

如果用户没有选择拖放动作,则代表拖动源支持的拖放动作集的 DnDConstants 集被搜索为 DnDConstants.ACTION_MOVE ,然后是 DnDConstants.ACTION_COPY ,然后是 DnDConstants.ACTION_LINK用户放下动作是发现的第一个常量。如果没有找到常量用户放下动作DnDConstants.ACTION_NONE

自从:
1.2
参见:
  • 构造方法详细信息

    • DropTargetDragEvent

      public DropTargetDragEvent(DropTargetContext  dtc, Point  cursorLocn, int dropAction, int srcActions)
      给定此操作的 DropTargetContext、“拖动”Cursor 的热点在 Component 的坐标中的位置、用户放置操作和源放置操作构造一个 DropTargetDragEvent
      参数:
      dtc - 此操作的 DropTargetContext
      cursorLocn - “拖动”光标在组件坐标中的热点位置
      dropAction - 用户放下操作
      srcActions - 源丢弃操作
      抛出:
      NullPointerException - 如果 cursorLocn 为空
      IllegalArgumentException - 如果 dropAction 不是 DnDConstants 之一。
      IllegalArgumentException - 如果 srcActions 不是 DnDConstants 的按位掩码。
      IllegalArgumentException - 如果 dtc 是 null
  • 方法详情

    • getLocation

      public Point  getLocation()
      此方法返回一个 Point,指示 CursorComponent' 的坐标中的当前位置。
      返回:
      Component 坐标中的当前光标位置。
    • getCurrentDataFlavors

      public DataFlavor [] getCurrentDataFlavors()
      此方法从 DropTargetContext 返回当前的 DataFlavor
      返回:
      来自 DropTargetContext 的当前 DataFlavors
    • getCurrentDataFlavorsAsList

      public List <DataFlavor > getCurrentDataFlavorsAsList()
      此方法将当前的 DataFlavor s 作为 java.util.List 返回
      返回:
      当前 DataFlavorjava.util.List
    • isDataFlavorSupported

      public boolean isDataFlavorSupported(DataFlavor  df)
      此方法返回一个 boolean 指示是否支持指定的 DataFlavor
      参数:
      df - 要测试的 DataFlavor
      返回:
      如果支持特定的 DataFlavor
    • getSourceActions

      public int getSourceActions()
      此方法返回源放置操作。
      返回:
      源丢弃操作
    • getDropAction

      public int getDropAction()
      此方法返回用户放下操作。
      返回:
      用户放下动作
    • getTransferable

      public Transferable  getTransferable()
      此方法返回表示与当前拖动操作关联的数据的 Transferable 对象。
      返回:
      与拖动操作关联的 Transferable
      抛出:
      InvalidDnDOperationException - 如果与拖动操作相关的数据不可用
      自从:
      1.5
    • acceptDrag

      public void acceptDrag(int dragOperation)
      接受拖拽。如果实现希望接受来自 srcActions 的操作而不是由 dropAction 表示的用户选择的操作,则应从 DropTargetListeners dragEnterdragOverdropActionChanged 方法调用此方法。
      参数:
      dragOperation - 目标接受的操作
    • rejectDrag

      public void rejectDrag()
      由于检查 dropAction 或可用的 DataFlavor 类型而拒绝拖动。