public interface DropTargetListener extends EventListener
DropTargetListener
インタフェースは、対象の DropTarget
が関与する DnD 操作の通知を提供するために DropTarget
クラスによって使用されるコールバックインタフェースです。このインタフェースのメソッドを実装すると、ドラッグ&ドロップ操作中に視覚的な「ドラッグアンダー」フィードバックをユーザーに提供できます。
インタフェースを実装することによってリスナーオブジェクトを作成したあと、それを DropTarget
に登録します。その DropTarget
のドロップサイトの操作可能な部分にドラッグが入ったり、移動したり、出たりした場合、ドロップアクションが変更された場合、およびドロップが発生した場合は、リスナーオブジェクト内の関連するメソッドが呼び出され、DropTargetEvent
がそのメソッドに渡されます。
DropTarget
のドロップサイトの操作可能な部分とは、関連付けられた Component
の幾何学的図形の一部であり、オーバーラップしているトップレベルのウィンドウや、アクティブな DropTarget
が関連付けられている Z 軸順で高位の別の Component
によって隠されていない部分のことです。
ドラッグ中に、現在のドラッグ操作に関連付けられたデータを、リスナーのメソッドに渡された DropTargetDragEvent
インスタンス上の getTransferable()
を呼び出すことによって取得できます。
DropTargetDragEvent
インスタンス上の getTransferable()
は、対応するリスナーのメソッド内でのみ呼び出すようにし、そのメソッドから戻る前に、必要なすべてのデータを返された Transferable
から取得するようにしてください。
修飾子と型 | メソッドと説明 |
---|---|
void |
dragEnter(DropTargetDragEvent dtde)
ドラッグ操作の進行中に、マウスポインタが、このリスナーに登録された
DropTarget のドロップサイトの操作可能な部分に入ったときに呼び出されます。 |
void |
dragExit(DropTargetEvent dte)
ドラッグ操作の進行中に、マウスポインタが、このリスナーに登録された
DropTarget のドロップサイトの操作可能な部分を出たときに呼び出されます。 |
void |
dragOver(DropTargetDragEvent dtde)
ドラッグ操作の進行中に、マウスポインタが引き続き、このリスナーに登録された
DropTarget のドロップサイトの操作可能な部分にあるときに呼び出されます。 |
void |
drop(DropTargetDropEvent dtde)
このリスナーに登録された
DropTarget のドロップサイトの操作可能な部分へのドロップでドラッグ操作が終了したときに呼び出されます。 |
void |
dropActionChanged(DropTargetDragEvent dtde)
ユーザーが現在のドロップジェスチャーを変更した場合に呼び出されます。
|
void dragEnter(DropTargetDragEvent dtde)
DropTarget
のドロップサイトの操作可能な部分に入ったときに呼び出されます。dtde
- DropTargetDragEvent
void dragOver(DropTargetDragEvent dtde)
DropTarget
のドロップサイトの操作可能な部分にあるときに呼び出されます。dtde
- DropTargetDragEvent
void dropActionChanged(DropTargetDragEvent dtde)
dtde
- DropTargetDragEvent
void dragExit(DropTargetEvent dte)
DropTarget
のドロップサイトの操作可能な部分を出たときに呼び出されます。dte
- DropTargetEvent
void drop(DropTargetDropEvent dtde)
DropTarget
のドロップサイトの操作可能な部分へのドロップでドラッグ操作が終了したときに呼び出されます。
このメソッドは、ジェスチャーに関連付けられたデータの転送を引き受ける役割を果たします。DropTargetDropEvent
は、転送されるデータオブジェクトを表す Transferable
オブジェクトを取得するための手段を提供します。
このメソッドから、DropTargetListener
は、DropTargetDropEvent
パラメータの acceptDrop(int dropAction) または rejectDrop() メソッドを使用してドロップを受け入れるか、または拒否します。
DropTargetDropEvent
の getTransferable() メソッドは acceptDrop() の前ではなくあとに呼び出すことができ、返された Transferable
の getTransferData() メソッドを使用してデータ転送を実行できます。
ドロップが完了したら、このメソッドの実装は、DropTargetDropEvent
の dropComplete(boolean success) メソッドに適切な boolean
を渡すことによって、ドロップの成功または失敗を通知する必要があります。
注:DropTargetDropEvent
の dropComplete(boolean success) メソッドの呼び出しの前にデータ転送を完了するようにしてください。それ以降では、DropTargetDropEvent.getTransferable()
によって返された Transferable
の getTransferData() メソッドの呼び出しの成功が保証されるのはデータ転送がローカルの場合だけ、つまり DropTargetDropEvent.isLocalTransfer()
が true
を返す場合だけです。そうでない場合、呼び出しの動作は実装に依存します。
dtde
- DropTargetDropEvent
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.