|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
public interface DropTargetListener
DropTargetListener
介面是 DropTarget
類別所使用的回調介面,用於提供所涉及的 DropTarget
的 DnD 操作的通知。在整個 Drag 和 Drop 操作中,可以實作此介面的方法,向使用者提供 "drag under" 的可視化反饋。
通過實作該介面,並使用 DropTarget
註冊該介面,可以創建一個 listener 物件。當 drag 進入、移上或退出該 DropTarget
的 drop 位置的可操作部分時,當 drop 操作改變時,以及當 drop 操作發生時,調用 listener 物件的相關方法,並將 DropTargetEvent
傳遞到該方法。
DropTarget
的 drop 位置的可操作部分是關聯 Component
幾何結構的一部分,該部分不會被重疊的頂層視窗或另一 Z-order(順序)更高的並具有關聯的活動 DropTarget
的 Component
遮掩。
在 drag 過程中,通過對 DropTargetDragEvent
實例(該實例被傳遞給 listener 的方法)調用 getTransferable()
,可以檢索與當前 drag 操作相關的資料。
注意,DropTargetDragEvent
實例上的 getTransferable()
應該只在各自 listener 的方法中調用,並且應該在該方法返回前從返回的 Transferable
檢索所有必需的資料。
方法摘要 | |
---|---|
void |
dragEnter(DropTargetDragEvent dtde)
正在進行 drag 操作時調用,此時鼠標指針進入 DropTarget (使用此 listener 註冊)的 drop 位置的可操作部分。 |
void |
dragExit(DropTargetEvent dte)
正在進行 drag 操作時調用,此時鼠標指針已退出 DropTarget (使用此 listener 註冊)的 drop 位置的可操作部分。 |
void |
dragOver(DropTargetDragEvent dtde)
正在進行 drag 操作時調用,此時鼠標指針仍然處於 DropTarget (使用此 listener 註冊)的 drop 位置的可操作部分。 |
void |
drop(DropTargetDropEvent dtde)
在 drag 操作已終止時調用,此時 drop 處於 DropTarget (使用此 listener 註冊)的 drop 位置的可操作部分。 |
void |
dropActionChanged(DropTargetDragEvent dtde)
在使用者已經修改了當前 drop 操作後調用。 |
方法詳細資訊 |
---|
void dragEnter(DropTargetDragEvent dtde)
DropTarget
(使用此 listener 註冊)的 drop 位置的可操作部分。
dtde
- DropTargetDragEvent
void dragOver(DropTargetDragEvent dtde)
DropTarget
(使用此 listener 註冊)的 drop 位置的可操作部分。
dtde
- DropTargetDragEvent
void dropActionChanged(DropTargetDragEvent dtde)
dtde
- DropTargetDragEvent
void dragExit(DropTargetEvent dte)
DropTarget
(使用此 listener 註冊)的 drop 位置的可操作部分。
dte
- DropTargetEvent
void drop(DropTargetDropEvent dtde)
DropTarget
(使用此 listener 註冊)的 drop 位置的可操作部分。
此方法負責保證與操作相關的資料傳輸。DropTargetDropEvent
提供獲得 Transferable
物件的手段,該物件表示要轉換的資料物件。
利用此方法,DropTargetListener
將通過帶 DropTargetDropEvent
參數的 acceptDrop(int dropAction) 或 rejectDrop() 方法來接受或拒絕 drop 操作。
在 acceptDrop() 之後(而不是之前),可以調用 DropTargetDropEvent
的 getTransferable() 方法,還可以通過返回的 Transferable
的 getTransferData() 方法執行資料傳輸。
完成 drop 之後,需要此方法實作指明 drop 成功還是失敗,這通過傳遞合適的 boolean
給 DropTargetDropEvent
的 dropComplete(boolean success) 方法來完成。
註:應該在調用 DropTargetDropEvent
的 dropComplete(boolean success) 方法之前完成資料傳輸。在此之後,調用由 DropTargetDropEvent.getTransferable()
返回的 Transferable
的 getTransferData() 方法,確保只有在資料傳輸限於本地時才會成功;也就是說,只有 DropTargetDropEvent.isLocalTransfer()
返回 true
時才會成功。否則,調用的行為是與實作相關的。
dtde
- DropTargetDropEvent
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。