|
JavaTM 2 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 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。