|
JavaTM Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object java.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 的 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方法详细信息 |
---|
public DragSource getDragSource()
DragSourceContext
的 DragSource
。
DragSourceContext
的 DragSource
public Component getComponent()
DragSourceContext
关联的 Component
。
Component
public 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
TooManyListenersException
public 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
中的 dragEnter
dsde
- DragSourceDragEvent
public void dragOver(DragSourceDragEvent dsde)
DragSourceContext
及其关联 DragSource
注册的 DragSourceContext
调用 dragOver
,并将指定的 DragSourceDragEvent
传递给它们。
DragSourceListener
中的 dragOver
dsde
- DragSourceDragEvent
public void dragExit(DragSourceEvent dse)
DragSourceContext
及其关联 DragSource
注册的 DragSourceListener
调用 dragExit
,并将指定的 DragSourceEvent
传递给它们。
DragSourceListener
中的 dragExit
dse
- DragSourceEvent
public void dropActionChanged(DragSourceDragEvent dsde)
DragSourceContext
及其关联 DragSource
注册的 DragSourceListener
调用 dropActionChanged
,并将指定的 DragSourceDragEvent
传递给它们。
DragSourceListener
中的 dropActionChanged
dsde
- DragSourceDragEvent
public void dragDropEnd(DragSourceDropEvent dsde)
DragSourceContext
及其关联 DragSource
注册的 DragSourceListener
调用 dragDropEnd
,并将指定的 DragSourceDropEvent
传递给它们。
DragSourceListener
中的 dragDropEnd
dsde
- DragSourceDropEvent
public void dragMouseMoved(DragSourceDragEvent dsde)
DragSourceContext
关联的 DragSource
注册的 DragSourceMotionListener
调用 dragMouseMoved
,并将指定的 DragSourceDragEvent
传递给它们。
DragSourceMotionListener
中的 dragMouseMoved
dsde
- DragSourceDragEvent
public 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. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。