- 含まれているクラス:
- TransferHandler
このクラスの主な目的は、開発者が、カプセル化されたデータの転送またはインポートが適切かどうかを判断するために必要な情報を提供する点にあります。 また、このクラスは、ドラッグ・アンド・ドロップ中にプロパティ(ドロップ位置を表示するかどうか、どのドロップ・アクションを使用するかなど)をカスタマイズするコントローラとしても機能します。
通常、開発者は、このクラスのインスタンスを作成する必要はありません。 代わりに、DnD実装により、TransferHandler
内にいくつかのメソッドが提供されています。
-
コンストラクタのサマリー
コンストラクタコンストラクタ説明TransferSupport
(Component component, Transferable transferable) 指定されたコンポーネントのisDrop()
false
とTransferable
を使用してTransferSupport
を作成します。 -
メソッドのサマリー
修飾子と型メソッド説明この転送のターゲット・コンポーネントを返します。この転送のデータ・フレーバを返します。int
このTransferSupport
がドロップを表す場合、そのドロップの選択アクションを返します。このTransferSupport
がドロップを表す場合、コンポーネントの現在のドロップ位置(null
以外)を返します。int
このTransferSupport
がドロップを表す場合、ドラッグ・ソースがサポートするドロップ・アクションを返します。この転送に関連したTransferable
を返します。int
このTransferSupport
がドロップを表す場合、そのドロップのユーザー・ドロップ・アクションを返します。boolean
指定のデータ・フレーバがサポートされているかどうかを返します。boolean
isDrop()
このTransferSupport
がドロップ操作を表しているかどうかを返します。void
setDropAction
(int dropAction) 転送のドロップ・アクション(ドロップを表す必要がある)として、デフォルトのユーザー・ドロップ・アクションではなく、指定のアクションを設定します。void
setShowDropLocation
(boolean showDropLocation) ドロップを表す転送に対して、ドロップ位置を視覚的に示すかどうかを設定します。
-
コンストラクタの詳細
-
TransferSupport
public TransferSupport(Component component, Transferable transferable) 指定されたコンポーネントのisDrop()
false
とTransferable
を使用してTransferSupport
を作成します。- パラメータ:
component
- ターゲット・コンポーネントtransferable
- 転送可能オブジェクト- 例外:
NullPointerException
- いずれかのパラメータがnull
の場合
-
-
メソッドの詳細
-
isDrop
public boolean isDrop()このTransferSupport
がドロップ操作を表しているかどうかを返します。- 戻り値:
- これがドロップ操作である場合は
true
、そうでない場合はfalse
。
-
getComponent
public Component getComponent()この転送のターゲット・コンポーネントを返します。- 戻り値:
- ターゲット・コンポーネント
-
getDropLocation
public TransferHandler.DropLocation getDropLocation()このTransferSupport
がドロップを表す場合、コンポーネントの現在のドロップ位置(null
以外)を返します。ノート: ドロップ・サポートが組み込まれているコンポーネントの場合、この位置はコンポーネントの
getDropLocation
メソッドによって返されるものと同じ種類のDropLocation
のサブクラスになります。このメソッドは、ドラッグ・アンド・ドロップ転送でしか使用しません。
isDrop()
がfalse
のときに呼び出すと、IllegalStateException
がスローされます。- 戻り値:
- ドロップ位置
- 例外:
IllegalStateException
- これがドロップでない場合- 関連項目:
-
setShowDropLocation
public void setShowDropLocation(boolean showDropLocation) ドロップを表す転送に対して、ドロップ位置を視覚的に示すかどうかを設定します。 これは、ドラッグ・アンド・ドロップ演算中に適切な場合にドロップ・ロケーションを自動的に表示するコンポーネントに適用されます。 デフォルトでは、ドロップ位置は、TransferHandler
がこのTransferSupport
によって表されるインポートを受け入れることができる場合にのみ表示されます。 このメソッドにより、ドロップ位置を常に表示または常に非表示にすることができます。このメソッドは、ドラッグ・アンド・ドロップ転送でしか使用しません。
isDrop()
がfalse
のときに呼び出すと、IllegalStateException
がスローされます。- パラメータ:
showDropLocation
- ドロップ位置を示すかどうか- 例外:
IllegalStateException
- これがドロップでない場合- 関連項目:
-
setDropAction
public void setDropAction(int dropAction) 転送のドロップ・アクション(ドロップを表す必要がある)として、デフォルトのユーザー・ドロップ・アクションではなく、指定のアクションを設定します。 このアクションは、ソースのドロップ・アクションでサポートされているアクションで、COPY
、MOVE
、またはLINK
のどれか1つにする必要があります。このメソッドは、ドラッグ・アンド・ドロップ転送でしか使用しません。
isDrop()
がfalse
のときに呼び出すと、IllegalStateException
がスローされます。- パラメータ:
dropAction
- ドロップ・アクション- 例外:
IllegalStateException
- これがドロップでない場合IllegalArgumentException
- 無効なアクションが指定された場合- 関連項目:
-
getDropAction
public int getDropAction()このTransferSupport
がドロップを表す場合、そのドロップの選択アクションを返します。setDropAction
を使って明示的に選択しないかぎり、getUserDropAction
で指定されたユーザー・ドロップ・アクションが返されます。TransferHandler
のimportData
メソッドでこれを照会して、アクションに基づいた処理をカスタマイズできます。このメソッドは、ドラッグ・アンド・ドロップ転送でしか使用しません。
isDrop()
がfalse
のときに呼び出すと、IllegalStateException
がスローされます。- 戻り値:
- ドロップの選択アクション
- 例外:
IllegalStateException
- これがドロップでない場合- 関連項目:
-
getUserDropAction
public int getUserDropAction()このTransferSupport
がドロップを表す場合、そのドロップのユーザー・ドロップ・アクションを返します。ドロップに対してユーザー・ドロップ・アクションを選択する方法については、
DropTargetDragEvent
とDropTargetDropEvent
のドキュメントを参照してください。setDropAction
メソッドを使って、異なったアクションをドロップ・アクションとして選択することもできます。ドロップが適切かどうかを判断するとき、またはドロップ・アクションを明示的に選択するとき、
TransferHandler
のcanImport
メソッドでこれを照会できます。このメソッドは、ドラッグ・アンド・ドロップ転送でしか使用しません。
isDrop()
がfalse
のときに呼び出すと、IllegalStateException
がスローされます。- 戻り値:
- ユーザー・ドロップ・アクション
- 例外:
IllegalStateException
- これがドロップでない場合- 関連項目:
-
getSourceDropActions
public int getSourceDropActions()このTransferSupport
がドロップを表す場合、ドラッグ・ソースがサポートするドロップ・アクションを返します。ソース・アクションは、この転送のソースでサポートされているアクションのセットを表します。これは、
COPY
、MOVE
およびLINK
のビット単位の論理和として表されます。 ドロップが適切かどうかを判断するとき、またはドロップ・アクションを明示的に選択するとき、TransferHandler
のcanImport
メソッドでこれを照会できます。 ソースが特定のアクションをサポートするかどうかを確認するには、そのアクションとソース・ドロップ・アクションのビット単位の論理積を求め、その結果を元のアクションと比較します。 たとえば:boolean copySupported = (COPY & getSourceDropActions()) == COPY;
このメソッドは、ドラッグ・アンド・ドロップ転送でしか使用しません。
isDrop()
がfalse
のときに呼び出すと、IllegalStateException
がスローされます。- 戻り値:
- ドラッグ・ソースのサポートされているドロップ・アクション
- 例外:
IllegalStateException
- これがドロップでない場合- 関連項目:
-
getDataFlavors
public DataFlavor[] getDataFlavors()この転送のデータ・フレーバを返します。- 戻り値:
- この転送のデータ・フレーバ
-
isDataFlavorSupported
public boolean isDataFlavorSupported(DataFlavor df) 指定のデータ・フレーバがサポートされているかどうかを返します。- パラメータ:
df
- テストするDataFlavor
- 戻り値:
- 指定のデータ・フレーバがサポートされているかどうか。
-
getTransferable
public Transferable getTransferable()この転送に関連したTransferable
を返します。ノート:
Transferable
を直接取得する必要がある場合以外は、このクラス上でその他のメソッドのうち1つを実行して、転送に関する情報を照会します。 この方法のほうが、Transferable
を取得して直接要求する方法よりもパフォーマンス面で優れていることがあります。- 戻り値:
- この転送に関連した
Transferable
-