- すべてのスーパー・インタフェース:
EventListener
- 既知のすべての実装クラス:
DropTarget
,DropTargetAdapter
public interface DropTargetListener extends EventListener
DropTargetListener
インタフェースは、対象のDropTarget
が関与するDnD操作の通知を提供するためにDropTarget
クラスによって使用されるコールバック・インタフェースです。 このインタフェースのメソッドを実装すると、ドラッグ&ドロップ操作中に視覚的な「ドラッグ・アンダー」フィード・バックをユーザーに提供できます。
インタフェースを実装することによってリスナー・オブジェクトを作成したあと、それをDropTarget
に登録します。 そのDropTarget
のドロップ・サイトの操作可能な部分にドラッグが入ったり、移動したり、出たりした場合、ドロップ・アクションが変更された場合、およびドロップが発生した場合は、リスナー・オブジェクト内の関連するメソッドが呼び出され、DropTargetEvent
がそのメソッドに渡されます。
DropTarget
のドロップ・サイトの操作可能な部分とは、関連付けられたComponent
の幾何学的図形の一部であり、オーバーラップしているトップ・レベルのウィンドウや、アクティブなDropTarget
が関連付けられているZ軸順で高位の別のComponent
によって隠されていない部分のことです。
ドラッグ中に、現在のドラッグ操作に関連付けられたデータを、リスナーのメソッドに渡されたDropTargetDragEvent
インスタンス上のgetTransferable()
を呼び出すことによって取得できます。
DropTargetDragEvent
インスタンス上のgetTransferable()
は、対応するリスナーのメソッド内でのみ呼び出すようにし、そのメソッドから戻る前に、必要なすべてのデータを返されたTransferable
から取得するようにしてください。
- 導入されたバージョン:
- 1.2
-
メソッドのサマリー
修飾子と型 メソッド 説明 void
dragEnter(DropTargetDragEvent dtde)
ドラッグ操作の進行中に、マウス・ポインタが、このリスナーに登録されたDropTarget
のドロップ・サイトの操作可能な部分に入ったときに呼び出されます。void
dragExit(DropTargetEvent dte)
ドラッグ操作の進行中に、マウス・ポインタが、このリスナーに登録されたDropTarget
のドロップ・サイトの操作可能な部分を出たときに呼び出されます。void
dragOver(DropTargetDragEvent dtde)
ドラッグ操作の進行中に、マウス・ポインタが引き続き、このリスナーに登録されたDropTarget
のドロップ・サイトの操作可能な部分にあるときに呼び出されます。void
drop(DropTargetDropEvent dtde)
このリスナーに登録されたDropTarget
のドロップ・サイトの操作可能な部分へのドロップでドラッグ操作が終了したときに呼び出されます。void
dropActionChanged(DropTargetDragEvent dtde)
ユーザーが現在のドロップ・ジェスチャを変更した場合に呼び出されます。
-
メソッドの詳細
-
dragEnter
void dragEnter(DropTargetDragEvent dtde)ドラッグ操作の進行中に、マウス・ポインタが、このリスナーに登録されたDropTarget
のドロップ・サイトの操作可能な部分に入ったときに呼び出されます。- パラメータ:
dtde
-DropTargetDragEvent
-
dragOver
void dragOver(DropTargetDragEvent dtde)ドラッグ操作の進行中に、マウス・ポインタが引き続き、このリスナーに登録されたDropTarget
のドロップ・サイトの操作可能な部分にあるときに呼び出されます。- パラメータ:
dtde
-DropTargetDragEvent
-
dropActionChanged
void dropActionChanged(DropTargetDragEvent dtde)ユーザーが現在のドロップ・ジェスチャを変更した場合に呼び出されます。- パラメータ:
dtde
-DropTargetDragEvent
-
dragExit
void dragExit(DropTargetEvent dte)ドラッグ操作の進行中に、マウス・ポインタが、このリスナーに登録されたDropTarget
のドロップ・サイトの操作可能な部分を出たときに呼び出されます。- パラメータ:
dte
-DropTargetEvent
-
drop
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
-