|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectjava.awt.dnd.DragSourceContext
public class DragSourceContext
DragSourceContext 类负责管理 Drag 和 Drop 协议的起始端。特别是负责管理对 DragSourceListener 和 DragSourceMotionListener 的拖动事件通知,并提供表示拖动操作源数据的 Transferable。
注意,DragSourceContext 自行实现 DragSourceListener 和 DragSourceMotionListener 接口。这就允许 DragSource 创建的平台同位体(DragSourceContextPeer 实例)能够在正在进行的操作中通知 DragSourceContext 状态改变。从而允许 DragSourceContext 介入平台和拖动操作起始端所提供的侦听器之间。
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。 |
void |
transferablesFlavorsChanged()
通知同位体该 Transferable 的 DataFlavor 已改变。 |
protected void |
updateCurrentCursor(int sourceAct,
int targetAct,
int status)
如果默认拖动光标行为处于活动状态,则此方法将为默认拖动光标设置受拖动源、放置目标动作和状态支持的指定动作,否则此方法不执行任何操作。 |
| 从类 java.lang.Object 继承的方法 |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| 字段详细信息 |
|---|
protected static final int DEFAULT
int 值,指示应该将 Cursor 改为默认(未放置)的 Cursor。
protected static final int ENTER
int 值,指示 Cursor 已进入 DropTarget。
protected static final int OVER
int 值,指示 Cursor 处于 DropTarget 上。
protected static final int CHANGED
int 值,指示用户操作已改变。
| 构造方法详细信息 |
|---|
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 - 此 Drag 的 DragSourceContextPeertrigger - 触发事件dragCursor - 初始的 CursordragImage - 要拖动的 Image(或者为 null)offset - 图像原点与触发事件时距离热点的偏移量t - Transferabledsl - 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| 方法详细信息 |
|---|
public DragSource getDragSource()
DragSourceContext 的 DragSource。
DragSourceContext 的 DragSourcepublic Component getComponent()
DragSourceContext 关联的 Component。
Componentpublic DragGestureEvent getTrigger()
DragGestureEvent。
public int getSourceActions()
DnDConstants 的位掩码,表示拖动源针对与此 DragSourceContext 关联的拖动操作所支持的放置动作集合。
public void setCursor(Cursor c)
Cursor。
如果指定的 Cursor 为 null,则为此拖动操作激活默认的拖动光标行为,否则停用该默认行为。
c - 要显示的 Cursor,或者为 null,表示激活默认拖动光标行为public Cursor getCursor()
Cursor
Cursor。
public void addDragSourceListener(DragSourceListener dsl)
throws TooManyListenersException
DragSourceListener 添加到此 DragSourceContext,则添加一个。如果 DragSourceListener 已存在,则此方法抛出 TooManyListenersException。
dsl - 要添加的 DragSourceListener。注意,虽然不禁止 null,但它作为参数是不可接受的值。
TooManyListenersException - 如果已添加 DragSourceListener
TooManyListenersExceptionpublic void removeDragSourceListener(DragSourceListener dsl)
DragSourceContext 移除指定的 DragSourceListener。
dsl - 要移除的 DragSourceListener;注意,虽然不禁止 null,但它作为参数是不可接受的值。public void transferablesFlavorsChanged()
Transferable 的 DataFlavor 已改变。
public void dragEnter(DragSourceDragEvent dsde)
DragSourceContext 及其关联 DragSource 注册的 DragSourceListener 调用 dragEnter,并将指定的 DragSourceDragEvent 传递给它们。
DragSourceListener 中的 dragEnterdsde - DragSourceDragEventpublic void dragOver(DragSourceDragEvent dsde)
DragSourceContext 及其关联 DragSource 注册的 DragSourceContext 调用 dragOver,并将指定的 DragSourceDragEvent 传递给它们。
DragSourceListener 中的 dragOverdsde - DragSourceDragEventpublic void dragExit(DragSourceEvent dse)
DragSourceContext 及其关联 DragSource 注册的 DragSourceListener 调用 dragExit,并将指定的 DragSourceEvent 传递给它们。
DragSourceListener 中的 dragExitdse - DragSourceEventpublic void dropActionChanged(DragSourceDragEvent dsde)
DragSourceContext 及其关联 DragSource 注册的 DragSourceListener 调用 dropActionChanged,并将指定的 DragSourceDragEvent 传递给它们。
DragSourceListener 中的 dropActionChangeddsde - DragSourceDragEventpublic void dragDropEnd(DragSourceDropEvent dsde)
DragSourceContext 及其关联 DragSource 注册的 DragSourceListener 调用 dragDropEnd,并将指定的 DragSourceDropEvent 传递给它们。
DragSourceListener 中的 dragDropEnddsde - DragSourceDropEventpublic void dragMouseMoved(DragSourceDragEvent dsde)
DragSourceContext 关联的 DragSource 注册的 DragSourceMotionListener 调用 dragMouseMoved,并将指定的 DragSourceDragEvent 传递给它们。
DragSourceMotionListener 中的 dragMouseMoveddsde - DragSourceDragEventpublic Transferable getTransferable()
DragSourceContext 关联的 Transferable。
Transferable
protected void updateCurrentCursor(int sourceAct,
int targetAct,
int status)
sourceAct - 受拖动源支持的动作targetAct - 放置目标动作status - DEFAULT、ENTER、OVER 和 CHANGED 字段之一
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。