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 - DropTargetDragEventvoid dragOver(DropTargetDragEvent dtde)
DropTargetのドロップ・サイトの操作可能な部分にあるときに呼び出されます。dtde - DropTargetDragEventvoid dropActionChanged(DropTargetDragEvent dtde)
dtde - DropTargetDragEventvoid dragExit(DropTargetEvent dte)
DropTargetのドロップ・サイトの操作可能な部分を出たときに呼び出されます。dte - DropTargetEventvoid 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, 2014, Oracle and/or its affiliates. All rights reserved.