| |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.awt.dnd
类 DragSourceContext
java.lang.Object java.awt.dnd.DragSourceContext
public class DragSourceContext
- extends Object
- implements DragSourceListener, DragSourceMotionListener, Serializable
DragSourceContext
类负责管理 Drag 和 Drop 协议的起始端。特别是负责管理给 DragSourceListener
和 DragSourceMotionListener
的拖动事件通知,并提供表示拖动操作源数据的 Transferable
。
注意,DragSourceContext
自行实现 DragSourceListener
和 DragSourceMotionListener
接口。这就允许由 DragSource
所创建的平台同位体(DragSourceContextPeer
实例)能够在正在进行的操作中通知 DragSourceContext
状态改变。从而允许将 DragSourceContext
本身插入平台和拖动操作初始程序所提供的侦听器之间。
- 从以下版本开始:
- 1.2
- 另请参见:
DragSourceListener
,DragSourceMotionListener
, 序列化表格
字段摘要 | |
---|---|
protected static int | CHANGED updateCurrentCursor() 使用的 int 值,指示用户操作已改变。 |
protected static int | DEFAULT updateCurrentCursor() 使用的 int 值,指示应该将该 Cursor 改为默认(不放置)的 Cursor 。 |
protected static int | ENTER updateCurrentCursor() 使用的 int 值,指示该 Cursor 已进入 DropTarget |
protected static int | OVER 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 。 |
方法摘要 | |
---|---|
void | addDragSourceListener(DragSourceListener dsl) 如果尚未将 DragSourceListener 添加到此 DragSourceContext ,则添加一个。 |
void | dragDropEnd(DragSourceDropEvent dsde) 在向此 DragSourceContext 及其关联 DragSource 注册的 DragSourceListener 上调用 dragDropEnd ,并将指定的 DragSourceDropEvent 传递给它们。 |
void | dragEnter(DragSourceDragEvent dsde) 在向此 DragSourceContext 及其关联 DragSource 注册的 DragSourceListener 上调用 dragEnter ,并将指定的 DragSourceDragEvent 传递给它们。 |
void | dragExit(DragSourceEvent dse) 在向此 DragSourceContext 及其关联 DragSource 注册的 DragSourceListener 上调用 dragExit ,并将指定的 DragSourceEvent 传递给它们。 |
void | dragMouseMoved(DragSourceDragEvent dsde) 在向与此 DragSourceContext 关联的 DragSource 注册的 DragSourceMotionListener 上调用 dragMouseMoved ,并将指定的 DragSourceDragEvent 传递给它们。 |
void | dragOver(DragSourceDragEvent dsde) 在向此 DragSourceContext 及其关联 DragSource 注册的 DragSourceContext 上调用 dragOver ,并将指定的 DragSourceDragEvent 传递给它们。 |
void | dropActionChanged(DragSourceDragEvent dsde) 在向此 DragSourceContext 及其关联 DragSource 注册的 DragSourceListener 上调用 dropActionChanged ,并将指定的 DragSourceDragEvent 传递给它们。 |
Component | getComponent() 返回与此 DragSourceContext 相关联的 Component 。 |
Cursor | getCursor() 返回当前的拖动 Cursor |
DragSource | getDragSource() 返回实例化此 DragSourceContext 的 DragSource 。 |
int | getSourceActions() 返回 DnDConstants 的位掩码,表示拖动源针对与此 DragSourceContext 关联的拖动操作所支持的放置动作集合。 |
Transferable | getTransferable() 返回与此 DragSourceContext 关联的 Transferable 。 |
DragGestureEvent | getTrigger() 返回最初触发该拖动的 DragGestureEvent 。 |
void | removeDragSourceListener(DragSourceListener dsl) 从此 DragSourceContext 移除指定的 DragSourceListener 。 |
void | setCursor(Cursor c) 将此拖动操作的光标设置为指定的 Cursor 如果指定的 Cursor 为 null ,则为此拖动操作激活默认的拖动光标行为,否则停用该默认行为。 |
void | transferablesFlavorsChanged() 通知同位体该 Transferable 的 DataFlavor 已改变。 |
protected void | updateCurrentCursor(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
。
如果DragSourceContextPeer
为null
,则抛出NullPointerException
。
如果DragGestureEvent
为null
,则抛出NullPointerException
。
如果Cursor
为null
,则不抛出异常并且为此次拖动操作激活默认的拖动光标行为。
如果Image
为null
,则不抛出异常。
如果Image
不为null
并且 offset 为null
,则抛出NullPointerException
。
如果Transferable
为null
,则抛出NullPointerException
。
如果DragSourceListener
为null
,则不抛出异常。- 参数:
dscp
- 此拖动操作的DragSourceContextPeer
trigger
- 触发事件dragCursor
- 初始的Cursor
dragImage
- 要拖动的Image
(或者为null
)offset
- 图像原点与触发事件时距离热点的偏移量t
-Transferable
dsl
-DragSourceListener
- 抛出:
IllegalArgumentException
- 如果与触发事件相关联的Component
为null
IllegalArgumentException
- 如果触发事件的DragSource
为null
IllegalArgumentException
- 如果该触发事件的拖动动作为DnDConstants.ACTION_NONE
IllegalArgumentException
- 如果与触发事件相关联的DragGestureRecognizer
的源动作等于DnDConstants.ACTION_NONE
NullPointerException
- 如果 dscp、trigger 或 t 为 null,或者 dragImage 为非 null 并且 offset 为 null
方法详细信息 |
---|
getDragSource
public DragSource getDragSource()
- 返回实例化此
DragSourceContext
的DragSource
。 - 返回:
- 实例化此
DragSourceContext
的DragSource
getComponent
public Component getComponent()
- 返回与此
DragSourceContext
相关联的Component
。 - 返回:
- 启动拖动的
Component
getTrigger
public DragGestureEvent getTrigger()
- 返回最初触发该拖动的
DragGestureEvent
。 - 返回:
- 触发拖动的 Event
getSourceActions
public int getSourceActions()
- 返回
DnDConstants
的位掩码,表示拖动源针对与此DragSourceContext
关联的拖动操作所支持的放置动作集合。 - 返回:
- 拖动源支持的放置动作