- java.lang.Object
-
- java.awt.dnd.DragSource
-
- すべての実装されたインタフェース:
Serializable
public class DragSource extends Object implements Serializable
DragSourceは、ドラッグ&ドロップ操作の開始を担当するエンティティであり、いくつかのシナリオで使用される可能性があります。- JVMごとに、そのJVMの寿命の間1デフォルト・インスタンス
- 潜在的なドラッグ・イニシエータ・オブジェクト(TextFieldなど)のクラスごとに1インスタンス。実装により異なる
- GUIの特定の
Componentのインスタンス、またはComponentインスタンスに関連付けられているアプリケーション固有のオブジェクトごとに1つ。実装により異なる - その他任意の関連付け。実装により異なる
DragSourceを取得した場合は、DragGestureRecognizerも取得して、DragSourceを特定のComponentと関連付けます。ユーザーのジェスチャの最初の解釈、および以降のドラッグ操作の開始は、通常は
DragGestureRecognizerによって実装される実装側のComponentの役割です。ドラッグ・ジェスチャが発生すると、ユーザーのナビゲーション・ジェスチャの処理およびドラッグ&ドロップ・プロトコル通知の送達のために、
DragSourceのstartDrag()メソッドが呼び出されます。DragSourceは、どの時点においても現在の操作として1つのドラッグ&ドロップ操作のみを許可し、それ以上のstartDrag()要求はすべて、現在の操作が完了するまでIllegalDnDOperationExceptionをスローすることによって拒否します。startDrag()メソッドは、createDragSourceContext()メソッドを呼び出して適切な
DragSourceContextをインスタンス化し、DragSourceContextPeerをそれに関連付けます。ドラッグ&ドロップ・システムが何らかの理由でドラッグ操作を開始できない場合、startDrag()メソッドは、このような状態を通知するために
java.awt.dnd.InvalidDnDOperationExceptionをスローします。 この例外は通常、基礎になるプラットフォーム・システムがドラッグを開始する状態にないか、あるいは指定されたパラメータが無効な場合にスローされます。ドラッグ中、ドラッグ操作の開始時にソースによって公開された一連の操作は、その操作が完了するまで変更できないことに注意してください。 これらの操作は、
DragSourceに関して、その操作の期間を通して一定です。- 導入されたバージョン:
- 1.2
- 関連項目:
- 直列化された形式
-
-
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 static CursorDefaultCopyDropドロップが現在許可されていることを示す、コピー操作で使用するデフォルトのCursor。static CursorDefaultCopyNoDropドロップが現在許可されていないことを示す、コピー操作で使用するデフォルトのCursor。static CursorDefaultLinkDropドロップが現在許可されていることを示す、リンク操作で使用するデフォルトのCursor。static CursorDefaultLinkNoDropドロップが現在許可されていないことを示す、リンク操作で使用するデフォルトのCursor。static CursorDefaultMoveDropドロップが現在許可されていることを示す、移動操作で使用するデフォルトのCursor。static CursorDefaultMoveNoDropドロップが現在許可されていないことを示す、移動操作で使用するデフォルトのCursor。
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 DragSource()新しいDragSourceを作成します。
-
メソッドのサマリー
すべてのメソッド staticメソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 voidaddDragSourceListener(DragSourceListener dsl)指定されたDragSourceListenerをこのDragSourceに追加し、このDragSourceで開始されたドラッグ操作中にドラッグ・ソース・イベントを受け取ります。voidaddDragSourceMotionListener(DragSourceMotionListener dsml)指定されたDragSourceMotionListenerをこのDragSourceに追加し、このDragSourceで開始されたドラッグ操作中にドラッグ・モーション・イベントを受け取ります。DragGestureRecognizercreateDefaultDragGestureRecognizer(Component c, int actions, DragGestureListener dgl)このDragSourceにDragGestureRecognizerのデフォルト抽象サブクラスを実装する新しいDragGestureRecognizerを作成し、指定されたComponentとDragGestureListenerを新しく作成されたオブジェクト上に設定します。<T extends DragGestureRecognizer>
TcreateDragGestureRecognizer(Class<T> recognizerAbstractClass, Component c, int actions, DragGestureListener dgl)DragGestureRecognizerの指定された抽象サブクラスを実装する新しいDragGestureRecognizerを作成し、指定されたComponentとDragGestureListenerを新しく作成されたオブジェクト上に設定します。protected DragSourceContextcreateDragSourceContext(DragGestureEvent dgl, Cursor dragCursor, Image dragImage, Point imageOffset, Transferable t, DragSourceListener dsl)現在のドラッグ操作を処理するDragSourceContextを作成します。static DragSourcegetDefaultDragSource()ベースとなるプラットフォームに関連付けられたDragSourceオブジェクトを取得します。DragSourceListener[]getDragSourceListeners()このDragSourceに登録されたすべてのDragSourceListenerを取得します。DragSourceMotionListener[]getDragSourceMotionListeners()このDragSourceに登録されたすべてのDragSourceMotionListenerを取得します。static intgetDragThreshold()ドラッグ・ジェスチャ・モーションのしきい値を返します。FlavorMapgetFlavorMap()このメソッドは、このDragSourceのFlavorMapを返します。<T extends EventListener>
T[]getListeners(Class<T> listenerType)このDragSourceにFooListenerとして現在登録されているすべてのオブジェクトを取得します。static booleanisDragImageSupported()基本となるプラットフォーム上でドラッグImageのサポートが使用可能かどうかを報告します。voidremoveDragSourceListener(DragSourceListener dsl)このDragSourceから指定されたDragSourceListenerを削除します。voidremoveDragSourceMotionListener(DragSourceMotionListener dsml)このDragSourceから指定されたDragSourceMotionListenerを削除します。voidstartDrag(DragGestureEvent trigger, Cursor dragCursor, Transferable transferable, DragSourceListener dsl)ドラッグを開始したDragGestureEvent、使用する初期のCursor、ドラッグのTransferable対象データ、およびDragSourceListenerを使用して、ドラッグを開始します。voidstartDrag(DragGestureEvent trigger, Cursor dragCursor, Transferable transferable, DragSourceListener dsl, FlavorMap flavorMap)ドラッグを開始したDragGestureEvent、使用する初期のCursor、ドラッグのTransferable対象データ、DragSourceListener、およびFlavorMapを使用して、ドラッグを開始します。voidstartDrag(DragGestureEvent trigger, Cursor dragCursor, Image dragImage, Point dragOffset, Transferable transferable, DragSourceListener dsl)ドラッグを開始したDragGestureEvent、使用する初期のCursor、ドラッグするImage、トリガーの瞬間におけるCursorのホット・スポットからのImage原点のオフセット、ドラッグの対象データ、およびDragSourceListenerで、ドラッグを開始します。voidstartDrag(DragGestureEvent trigger, Cursor dragCursor, Image dragImage, Point imageOffset, Transferable transferable, DragSourceListener dsl, FlavorMap flavorMap)ドラッグを開始したDragGestureEvent、使用する初期のCursor、ドラッグするImage、トリガーの瞬間におけるCursorのホット・スポットからのImage原点のオフセット、ドラッグのTransferable対象データ、DragSourceListener、およびFlavorMapで、ドラッグを開始します。
-
-
-
フィールドの詳細
-
DefaultCopyDrop
public static final Cursor DefaultCopyDrop
ドロップが現在許可されていることを示す、コピー操作で使用するデフォルトのCursor。GraphicsEnvironment.isHeadless()がtrueを返す場合はnull。
-
DefaultMoveDrop
public static final Cursor DefaultMoveDrop
ドロップが現在許可されていることを示す、移動操作で使用するデフォルトのCursor。GraphicsEnvironment.isHeadless()がtrueを返す場合はnull。
-
DefaultLinkDrop
public static final Cursor DefaultLinkDrop
ドロップが現在許可されていることを示す、リンク操作で使用するデフォルトのCursor。GraphicsEnvironment.isHeadless()がtrueを返す場合はnull。
-
DefaultCopyNoDrop
public static final Cursor DefaultCopyNoDrop
ドロップが現在許可されていないことを示す、コピー操作で使用するデフォルトのCursor。GraphicsEnvironment.isHeadless()がtrueを返す場合はnull。
-
DefaultMoveNoDrop
public static final Cursor DefaultMoveNoDrop
ドロップが現在許可されていないことを示す、移動操作で使用するデフォルトのCursor。GraphicsEnvironment.isHeadless()がtrueを返す場合はnull。
-
DefaultLinkNoDrop
public static final Cursor DefaultLinkNoDrop
ドロップが現在許可されていないことを示す、リンク操作で使用するデフォルトのCursor。GraphicsEnvironment.isHeadless()がtrueを返す場合はnull。
-
-
コンストラクタの詳細
-
DragSource
public DragSource() throws HeadlessException新しいDragSourceを作成します。- 例外:
HeadlessException- GraphicsEnvironment.isHeadless()がtrueを返す場合- 関連項目:
GraphicsEnvironment.isHeadless()
-
-
メソッドの詳細
-
getDefaultDragSource
public static DragSource getDefaultDragSource()
基本となるプラットフォームに関連付けられたDragSourceオブジェクトを取得します。- 戻り値:
- プラットフォームDragSource
- 例外:
HeadlessException- GraphicsEnvironment.isHeadless()がtrueを返す場合- 関連項目:
GraphicsEnvironment.isHeadless()
-
isDragImageSupported
public static boolean isDragImageSupported()
基本となるプラットフォーム上でドラッグImageのサポートが使用可能かどうかを報告します。- 戻り値:
- このプラットフォームでドラッグ・イメージ・サポートが可能な場合
-
startDrag
public void startDrag(DragGestureEvent trigger, Cursor dragCursor, Image dragImage, Point imageOffset, Transferable transferable, DragSourceListener dsl, FlavorMap flavorMap) throws InvalidDnDOperationException
ドラッグを開始したDragGestureEvent、使用する初期のCursor、ドラッグするImage、トリガーの瞬間におけるCursorのホット・スポットからのImage原点のオフセット、ドラッグのTransferable対象データ、DragSourceListener、およびFlavorMapで、ドラッグを開始します。- パラメータ:
trigger- ドラッグを開始したDragGestureEventdragCursor- このドラッグ操作の初期のCursor。デフォルトのカーソル処理の場合はnull。ドラッグ&ドロップ中のカーソル処理メカニズムの詳細は、DragSourceContextを参照してください。dragImage- ドラッグするイメージ、またはnullimageOffset- トリガーの瞬間におけるCursorのホット・スポットからのImage原点のオフセットtransferable- ドラッグの対象データdsl-DragSourceListenerflavorMap- 使用するFlavorMap、またはnull- 例外:
InvalidDnDOperationException- ドラッグ&ドロップ・システムがドラッグ操作を開始できない場合、または既存のドラッグ操作を引き続き実行中にユーザーがドラッグを開始しようとした場合
-
startDrag
public void startDrag(DragGestureEvent trigger, Cursor dragCursor, Transferable transferable, DragSourceListener dsl, FlavorMap flavorMap) throws InvalidDnDOperationException
ドラッグを開始したDragGestureEvent、使用する初期のCursor、ドラッグのTransferable対象データ、DragSourceListener、およびFlavorMapを使用して、ドラッグを開始します。- パラメータ:
trigger- ドラッグを開始したDragGestureEventdragCursor- このドラッグ操作の初期のCursor。デフォルトのカーソル処理の場合はnull。ドラッグ&ドロップ中のカーソル処理メカニズムの詳細は、DragSourceContextを参照してください。transferable- ドラッグの対象データdsl-DragSourceListenerflavorMap- 使用するFlavorMap、またはnull- 例外:
InvalidDnDOperationException- ドラッグ&ドロップ・システムがドラッグ操作を開始できない場合、または既存のドラッグ操作を引き続き実行中にユーザーがドラッグを開始しようとした場合
-
startDrag
public void startDrag(DragGestureEvent trigger, Cursor dragCursor, Image dragImage, Point dragOffset, Transferable transferable, DragSourceListener dsl) throws InvalidDnDOperationException
ドラッグを開始したDragGestureEvent、使用する初期のCursor、ドラッグするImage、トリガーの瞬間におけるCursorのホット・スポットからのImage原点のオフセット、ドラッグの対象データ、およびDragSourceListenerで、ドラッグを開始します。- パラメータ:
trigger- ドラッグを開始したDragGestureEventdragCursor- このドラッグ操作の初期のCursor。デフォルトのカーソル処理の場合はnull。ドラッグ&ドロップ中のカーソル処理メカニズムの詳細は、DragSourceContextを参照してください。dragImage- ドラッグするImage、またはnulldragOffset- トリガーの瞬間におけるCursorのホット・スポットからのImage原点のオフセットtransferable- ドラッグの対象データdsl-DragSourceListener- 例外:
InvalidDnDOperationException- ドラッグ&ドロップ・システムがドラッグ操作を開始できない場合、または既存のドラッグ操作を引き続き実行中にユーザーがドラッグを開始しようとした場合
-
startDrag
public void startDrag(DragGestureEvent trigger, Cursor dragCursor, Transferable transferable, DragSourceListener dsl) throws InvalidDnDOperationException
ドラッグを開始したDragGestureEvent、使用する初期のCursor、ドラッグのTransferable対象データ、およびDragSourceListenerを使用して、ドラッグを開始します。- パラメータ:
trigger- ドラッグを開始したDragGestureEventdragCursor- このドラッグ操作の初期のCursor。デフォルトのカーソル処理の場合はnull。ドラッグ&ドロップ中のカーソル処理メカニズムの詳細は、DragSourceContextクラスを参照transferable- ドラッグの対象データdsl-DragSourceListener- 例外:
InvalidDnDOperationException- ドラッグ&ドロップ・システムがドラッグ操作を開始できない場合、または既存のドラッグ操作を引き続き実行中にユーザーがドラッグを開始しようとした場合
-
createDragSourceContext
protected DragSourceContext createDragSourceContext(DragGestureEvent dgl, Cursor dragCursor, Image dragImage, Point imageOffset, Transferable t, DragSourceListener dsl)
現在のドラッグ操作を処理するDragSourceContextを作成します。新しい
DragSourceContextサブクラスを組み込むには、DragSourceをサブクラス化し、このメソッドをオーバーライドします。dragImageがnullの場合は、このドラッグ操作のドラッグオーバー・フィードバックを表すためにイメージが使用されませんが、NullPointerExceptionはスローされません。dslがnullの場合は、作成されたDragSourceContextにドラッグ・ソース・リスナーが登録されませんが、NullPointerExceptionはスローされません。- パラメータ:
dgl- ドラッグをトリガーしたDragGestureEventdragCursor- このドラッグ操作の初期のCursor。デフォルトのカーソル処理の場合はnull。ドラッグ&ドロップ中のカーソル処理メカニズムの詳細は、DragSourceContextクラスを参照dragImage- ドラッグするImage、またはnullimageOffset- トリガーの瞬間におけるカーソルのホット・スポットからのImage原点のオフセットt- ドラッグの対象データdsl-DragSourceListener- 戻り値:
DragSourceContext- 例外:
NullPointerException-dscpがnullである場合NullPointerException-dglがnullである場合NullPointerException-dragImageがnullではなく、imageOffsetがnullの場合NullPointerException-tがnullである場合IllegalArgumentException- トリガー・イベントに関連付けられたComponentがnullの場合。IllegalArgumentException- トリガー・イベントのDragSourceがnullの場合。IllegalArgumentException- トリガー・イベントのドラッグ・アクションがDnDConstants.ACTION_NONEの場合。IllegalArgumentException- トリガー・イベントに関連付けられたDragGestureRecognizerのソース・アクションがDnDConstants.ACTION_NONEに等しい場合。
-
getFlavorMap
public FlavorMap getFlavorMap()
このメソッドは、このDragSourceのFlavorMapを返します。- 戻り値:
- この
DragSourceのFlavorMap
-
createDragGestureRecognizer
public <T extends DragGestureRecognizer> T createDragGestureRecognizer(Class<T> recognizerAbstractClass, Component c, int actions, DragGestureListener dgl)
DragGestureRecognizerの指定された抽象サブクラスを実装する新しいDragGestureRecognizerを作成し、指定されたComponentとDragGestureListenerを新しく作成されたオブジェクト上に設定します。- 型パラメータ:
T- 作成するDragGestureRecognizerの型- パラメータ:
recognizerAbstractClass- 要求された抽象型actions- 許可されているソース・ドラッグ・アクションc-Componentターゲットdgl- 通知するDragGestureListener- 戻り値:
- 新しい
DragGestureRecognizer。Toolkit.createDragGestureRecognizerメソッドが、要求されたDragGestureRecognizerサブクラスに使用可能な実装を持たず、nullを返した場合はnull
-
createDefaultDragGestureRecognizer
public DragGestureRecognizer createDefaultDragGestureRecognizer(Component c, int actions, DragGestureListener dgl)
このDragSourceにDragGestureRecognizerのデフォルト抽象サブクラスを実装する新しいDragGestureRecognizerを作成し、指定されたComponentとDragGestureListenerを新しく作成されたオブジェクト上に設定します。 このDragSourceの場合、デフォルトはMouseDragGestureRecognizerです。- パラメータ:
c- レコグナイザのComponentターゲットactions- 許可されているソース・アクションdgl- 通知するDragGestureListener- 戻り値:
- 新しい
DragGestureRecognizer。Toolkit.createDragGestureRecognizerメソッドが、要求されたDragGestureRecognizerサブクラスに使用可能な実装を持たず、nullを返した場合はnull
-
addDragSourceListener
public void addDragSourceListener(DragSourceListener dsl)
指定されたDragSourceListenerをこのDragSourceに追加し、このDragSourceで開始されたドラッグ操作中にドラッグ・ソース・イベントを受け取ります。nullリスナーが指定されている場合は、何も処理は行われず、例外はスローされません。- パラメータ:
dsl- 追加するDragSourceListener- 導入されたバージョン:
- 1.4
- 関連項目:
removeDragSourceListener(java.awt.dnd.DragSourceListener),getDragSourceListeners()
-
removeDragSourceListener
public void removeDragSourceListener(DragSourceListener dsl)
このDragSourceから指定されたDragSourceListenerを削除します。nullリスナーが指定されている場合は、何も処理は行われず、例外はスローされません。 引数で指定されたリスナーが以前にこのDragSourceに追加されなかった場合は、何も処理は行われず、例外はスローされません。- パラメータ:
dsl- 削除するDragSourceListener- 導入されたバージョン:
- 1.4
- 関連項目:
addDragSourceListener(java.awt.dnd.DragSourceListener),getDragSourceListeners()
-
getDragSourceListeners
public DragSourceListener[] getDragSourceListeners()
このDragSourceに登録されたすべてのDragSourceListenerを取得します。- 戻り値:
- この
DragSourceのすべてのDragSourceListener。このようなリスナーが現在登録されていない場合は、空の配列 - 導入されたバージョン:
- 1.4
- 関連項目:
addDragSourceListener(java.awt.dnd.DragSourceListener),removeDragSourceListener(java.awt.dnd.DragSourceListener)
-
addDragSourceMotionListener
public void addDragSourceMotionListener(DragSourceMotionListener dsml)
指定されたDragSourceMotionListenerをこのDragSourceに追加し、このDragSourceで開始されたドラッグ操作中にドラッグ・モーション・イベントを受け取ります。nullリスナーが指定されている場合は、何も処理は行われず、例外はスローされません。- パラメータ:
dsml- 追加するDragSourceMotionListener- 導入されたバージョン:
- 1.4
- 関連項目:
removeDragSourceMotionListener(java.awt.dnd.DragSourceMotionListener),getDragSourceMotionListeners()
-
removeDragSourceMotionListener
public void removeDragSourceMotionListener(DragSourceMotionListener dsml)
このDragSourceから指定されたDragSourceMotionListenerを削除します。nullリスナーが指定されている場合は、何も処理は行われず、例外はスローされません。 引数で指定されたリスナーが以前にこのDragSourceに追加されなかった場合は、何も処理は行われず、例外はスローされません。- パラメータ:
dsml- 削除するDragSourceMotionListener- 導入されたバージョン:
- 1.4
- 関連項目:
addDragSourceMotionListener(java.awt.dnd.DragSourceMotionListener),getDragSourceMotionListeners()
-
getDragSourceMotionListeners
public DragSourceMotionListener[] getDragSourceMotionListeners()
このDragSourceに登録されたすべてのDragSourceMotionListenerを取得します。- 戻り値:
- この
DragSourceのすべてのDragSourceMotionListener。このようなリスナーが現在登録されていない場合は、空の配列 - 導入されたバージョン:
- 1.4
- 関連項目:
addDragSourceMotionListener(java.awt.dnd.DragSourceMotionListener),removeDragSourceMotionListener(java.awt.dnd.DragSourceMotionListener)
-
getListeners
public <T extends EventListener> T[] getListeners(Class<T> listenerType)
現在このDragSourceにFooListenerとして登録されているすべてのオブジェクトを取得します。FooListenerは、addFooListenerメソッドを使用して登録されます。- 型パラメータ:
T- リスナー・オブジェクトの型- パラメータ:
listenerType- 要求されるリスナーの型。java.util.EventListenerの子孫のインタフェースを指定してください- 戻り値:
- この
DragSource上でFooListenerとして登録されているすべてのオブジェクトの配列。このようなリスナーが追加されていない場合は空の配列 - 例外:
ClassCastException-listenerTypeで、java.util.EventListenerを実装するクラスまたはインタフェースが指定されなかった場合- 導入されたバージョン:
- 1.4
- 関連項目:
getDragSourceListeners(),getDragSourceMotionListeners()
-
getDragThreshold
public static int getDragThreshold()
ドラッグ・ジェスチャ・モーションのしきい値を返します。 ドラッグ・ジェスチャ・モーションのしきい値は、MouseDragGestureRecognizerの推奨される動作を定義します。システム・プロパティ
awt.dnd.drag.thresholdが正の整数に設定されている場合、このメソッドはシステム・プロパティの値を返します。そうでない場合、関連するデスクトップ・プロパティが使用でき、Javaプラットフォームの実装でサポートされている場合、このメソッドはそのプロパティの値を返します。そうでない場合、このメソッドは何らかのデフォルト値を返します。 関連するデスクトップ・プロパティは、java.awt.Toolkit.getDesktopProperty("DnD.gestureMotionThreshold")を使用して照会できます。- 戻り値:
- ドラッグ・ジェスチャ・モーションのしきい値
- 導入されたバージョン:
- 1.5
- 関連項目:
MouseDragGestureRecognizer
-
-