所有类


java.awt.dnd
类 DragSourceContext

java.lang.Object
  继承者 java.awt.dnd.DragSourceContext
所有已实现的接口:
DragSourceListener, DragSourceMotionListener, Serializable, EventListener

public class DragSourceContext
   
   
   
   
   
extends Object
implements DragSourceListener, DragSourceMotionListener, Serializable

DragSourceContext 类负责管理 Drag 和 Drop 协议的起始端。特别是负责管理给 DragSourceListenerDragSourceMotionListener 的拖动事件通知,并提供表示拖动操作源数据的 Transferable

注意,DragSourceContext 自行实现 DragSourceListenerDragSourceMotionListener 接口。这就允许由 DragSource 所创建的平台同位体(DragSourceContextPeer 实例)能够在正在进行的操作中通知 DragSourceContext 状态改变。从而允许将 DragSourceContext 本身插入平台和拖动操作初始程序所提供的侦听器之间。

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

字段摘要
protected static intCHANGED
          updateCurrentCursor() 使用的 int 值,指示用户操作已改变。
protected static intDEFAULT
          updateCurrentCursor() 使用的 int 值,指示应该将该 Cursor 改为默认(不放置)的 Cursor
protected static intENTER
          updateCurrentCursor() 使用的 int 值,指示该 Cursor 已进入 DropTarget
protected static intOVER
          updateCurrentCursor() 使用的 int 值,指示该 Cursor 处于 DropTarget 上。
 
构造方法摘要
DragSourceContext(java.awt.dnd.peer.DragSourceContextPeer dscp, DragGestureEvent trigger, Cursor dragCursor, Image dragImage, Point offset, Transferable t, DragSourceListener dsl)
          从 DragSource 进行调用,此构造方法创建一个 DragSourceContext,使其具有给定此 Drag 的 DragSourceContextPeer、触发该 Drag 的 DragGestureEvent、用于该 Drag 的初始 Cursor、进行 Drag 时显示的 Image(可选)、Image 原点与触发事件时距离热点的偏移量、Transferable 目标数据和 Drag 和 Drop 操作期间使用的 DragSourceListener
 
方法摘要
 voidaddDragSourceListener(DragSourceListener dsl)
          如果尚未将 DragSourceListener 添加到此 DragSourceContext,则添加一个。
 voiddragDropEnd(DragSourceDropEvent dsde)
          在向此 DragSourceContext 及其关联 DragSource 注册的 DragSourceListener 上调用 dragDropEnd,并将指定的 DragSourceDropEvent 传递给它们。
 voiddragEnter(DragSourceDragEvent dsde)
          在向此 DragSourceContext 及其关联 DragSource 注册的 DragSourceListener 上调用 dragEnter,并将指定的 DragSourceDragEvent 传递给它们。
 voiddragExit(DragSourceEvent dse)
          在向此 DragSourceContext 及其关联 DragSource 注册的 DragSourceListener 上调用 dragExit,并将指定的 DragSourceEvent 传递给它们。
 voiddragMouseMoved(DragSourceDragEvent dsde)
          在向与此 DragSourceContext 关联的 DragSource 注册的 DragSourceMotionListener 上调用 dragMouseMoved,并将指定的 DragSourceDragEvent 传递给它们。
 voiddragOver(DragSourceDragEvent dsde)
          在向此 DragSourceContext 及其关联 DragSource 注册的 DragSourceContext 上调用 dragOver,并将指定的 DragSourceDragEvent 传递给它们。
 voiddropActionChanged(DragSourceDragEvent dsde)
          在向此 DragSourceContext 及其关联 DragSource 注册的 DragSourceListener 上调用 dropActionChanged,并将指定的 DragSourceDragEvent 传递给它们。
 ComponentgetComponent()
          返回与此 DragSourceContext 相关联的 Component
 CursorgetCursor()
          返回当前的拖动 Cursor
 DragSourcegetDragSource()
          返回实例化此 DragSourceContextDragSource
 intgetSourceActions()
          返回 DnDConstants 的位掩码,表示拖动源针对与此 DragSourceContext 关联的拖动操作所支持的放置动作集合。
 TransferablegetTransferable()
          返回与此 DragSourceContext 关联的 Transferable
 DragGestureEventgetTrigger()
          返回最初触发该拖动的 DragGestureEvent
 voidremoveDragSourceListener(DragSourceListener dsl)
          从此 DragSourceContext 移除指定的 DragSourceListener
 voidsetCursor(Cursor c)
          将此拖动操作的光标设置为指定的 Cursor 如果指定的 Cursornull,则为此拖动操作激活默认的拖动光标行为,否则停用该默认行为。
 voidtransferablesFlavorsChanged()
          通知同位体该 TransferableDataFlavor 已改变。
protected  voidupdateCurrentCursor(int dropOp, int targetAct, int status)
          如果默认的拖动光标行为处于活动状态,则此方法为指定的选定操作、支持的动作和状态设置默认拖动光标,否则此方法不执行任何操作。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

DEFAULT

protected static final int DEFAULT
updateCurrentCursor() 使用的 int 值,指示应该将该 Cursor 改为默认(不放置)的 Cursor

另请参见:
常量字段值

ENTER

protected static final int ENTER
updateCurrentCursor() 使用的 int 值,指示该 Cursor 已进入 DropTarget

另请参见:
常量字段值

OVER

protected static final int OVER
updateCurrentCursor() 使用的 int 值,指示该 Cursor 处于 DropTarget 上。

另请参见:
常量字段值

CHANGED

protected static final int CHANGED
updateCurrentCursor() 使用的 int 值,指示用户操作已改变。

另请参见:
常量字段值
构造方法详细信息

DragSourceContext

public DragSourceContext(java.awt.dnd.peer.DragSourceContextPeer dscp,
                         DragGestureEvent trigger,
                         Cursor dragCursor,
                         Image dragImage,
                         Point offset,
                         Transferable t,
                         DragSourceListener dsl)
DragSource 进行调用,此构造方法创建一个 DragSourceContext,使其具有给定此 Drag 的 DragSourceContextPeer、触发该 Drag 的 DragGestureEvent、用于该 Drag 的初始 Cursor、进行 Drag 时显示的 Image(可选)、Image 原点与触发事件时距离热点的偏移量、Transferable 目标数据和 Drag 和 Drop 操作期间使用的 DragSourceListener
如果 DragSourceContextPeernull,则抛出 NullPointerException
如果 DragGestureEventnull,则抛出 NullPointerException
如果 Cursornull,则不抛出异常并且为此次拖动操作激活默认的拖动光标行为。
如果 Imagenull,则不抛出异常。
如果 Image 不为 null 并且 offset 为 null,则抛出 NullPointerException
如果 Transferablenull,则抛出 NullPointerException
如果 DragSourceListenernull,则不抛出异常。

参数:
dscp - 此拖动操作的 DragSourceContextPeer
trigger - 触发事件
dragCursor - 初始的 Cursor
dragImage - 要拖动的 Image(或者为 null
offset - 图像原点与触发事件时距离热点的偏移量
t - Transferable
dsl - DragSourceListener
抛出:
IllegalArgumentException - 如果与触发事件相关联的 Componentnull
IllegalArgumentException - 如果触发事件的 DragSourcenull
IllegalArgumentException - 如果该触发事件的拖动动作为 DnDConstants.ACTION_NONE
IllegalArgumentException - 如果与触发事件相关联的 DragGestureRecognizer 的源动作等于 DnDConstants.ACTION_NONE
NullPointerException - 如果 dscp、trigger 或 t 为 null,或者 dragImage 为非 null 并且 offset 为 null
方法详细信息

getDragSource

public DragSource getDragSource()
返回实例化此 DragSourceContextDragSource

返回:
实例化此 DragSourceContextDragSource

getComponent

public Component getComponent()
返回与此 DragSourceContext 相关联的 Component

返回:
启动拖动的 Component

getTrigger

public DragGestureEvent getTrigger()
返回最初触发该拖动的 DragGestureEvent

返回:
触发拖动的 Event

getSourceActions

public int getSourceActions()
返回 DnDConstants 的位掩码,表示拖动源针对与此 DragSourceContext 关联的拖动操作所支持的放置动作集合。

返回:
拖动源支持的放置动作