|
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. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。