| |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
javax.swing
类 TransferHandler.TransferSupport
java.lang.Object javax.swing.TransferHandler.TransferSupport
- 正在封闭类:
- TransferHandler
public static final class TransferHandler.TransferSupport
- extends Object
此类封装剪贴板或拖放传输的所有相关详细信息,并且还允许自定义拖放过程的各方面。
此类的主要目的是提供开发人员需要的信息,以便确定传输的适合性或者导入传输中包含的数据。但它同时又是一个控制器,可自定义拖放过程中的属性,比如是否显示放置位置,使用哪种放置动作等。
开发人员通常不需要创建此类的实例。它们是 DnD 实现向 TransferHandler
中的某些方法提供的。
- 从以下版本开始:
- 1.6
- 另请参见:
TransferHandler.canImport(TransferHandler.TransferSupport)
,TransferHandler.importData(TransferHandler.TransferSupport)
构造方法摘要 | |
---|---|
TransferHandler.TransferSupport(Component component, Transferable transferable) 使用给定组件和 Transferable 创建一个 TransferSupport ,对于该 TransferSupport isDrop() 返回 false 。 |
方法摘要 | |
---|---|
Component | getComponent() 返回此传输的目标组件。 |
DataFlavor[] | getDataFlavors() 返回此传输的数据 flavor。 |
int | getDropAction() 当此 TransferSupport 表示放置操作时,返回为其选择的动作。 |
TransferHandler.DropLocation | getDropLocation() 此 TransferSupport 表示一个放置操作时,返回组件的当前放置位置(非 null )。 |
int | getSourceDropActions() 当此 TransferSupport 表示放置操作时,返回拖动源受支持的放置动作。 |
Transferable | getTransferable() 返回与此传输关联的 Transferable 。 |
int | getUserDropAction() 当此 TransferSupport 表示一个放置操作时,返回其用户放置动作。 |
boolean | isDataFlavorSupported(DataFlavor df) 返回是否支持给定的数据 flavor。 |
boolean | isDrop() 返回此 TransferSupport 是否表示一个放置操作。 |
void | setDropAction(int dropAction) 将传输(必须表示一个放置操作)的放置动作设置为给定动作,而不是默认的用户放置动作。 |
void | setShowDropLocation(boolean showDropLocation) 设置是否应该为传输(必须表示一个放置操作)可视地指出放置位置。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
TransferHandler.TransferSupport
public TransferHandler.TransferSupport(Component component, Transferable transferable)
- 使用给定组件和
Transferable
创建一个TransferSupport
,对于该TransferSupport
isDrop()
返回false
。- 参数:
component
- 目标组件transferable
- transferable- 抛出:
NullPointerException
- 如果任一参数为null
方法详细信息 |
---|
isDrop
public boolean isDrop()
- 返回此
TransferSupport
是否表示一个放置操作。 - 返回:
- 如果这是一个放置操作,则返回
true
;否则返回false
。
getComponent
public Component getComponent()
- 返回此传输的目标组件。
- 返回:
- 目标组件
getDropLocation
public TransferHandler.DropLocation getDropLocation()
- 此
TransferSupport
表示一个放置操作时,返回组件的当前放置位置(非null
)。注:对于带内置放置操作支持的组件,此位置将是一个
DropLocation
的子类,该DropLocation
的类型与该组件的getDropLocation
方法返回的相同。此方法只用于拖放传输。
isDrop()
为false
时调用此方法将导致IllegalStateException
。 - 返回:
- 放置位置
- 抛出:
IllegalStateException
- 如果此 TransferSupport 不是一个放置操作- 另请参见:
isDrop
setShowDropLocation
public void setShowDropLocation(boolean showDropLocation)
- 设置是否应该为传输(必须表示一个放置操作)可视地指出放置位置。此方法用于那些在拖放操作过程的适当时候能够自动显示放置位置的组件。默认情况下,只有在
TransferHandler
已声明它能够接受此TransferSupport
表示的导入时才显示放置位置。使用此方法,可以将放置位置强制改为总是显示,或总是不显示。此方法只用于拖放传输。
isDrop()
为false
时调用此方法将导致IllegalStateException
。 - 参数:
showDropLocation
- 是否指示放置位置- 抛出:
IllegalStateException
- 如果此 TransferSupport 不是一个放置操作- 另请参见:
isDrop
setDropAction
public void setDropAction(int dropAction)
- 将传输(必须表示一个放置操作)的放置动作设置为给定动作,而不是默认的用户放置动作。此动作必须受源放置动作的支持,并且必须为
COPY
、MOVE
或LINK
之一。此方法只用于拖放传输。
isDrop()
为false
时调用此方法将导致IllegalStateException
。 - 参数:
dropAction
- 放置动作- 抛出:
IllegalStateException
- 如果此 TransferSupport 不是一个放置操作IllegalArgumentException
- 如果指定了无效的动作- 另请参见:
getDropAction()
,getUserDropAction()
,getSourceDropActions()
,isDrop
getDropAction
public int getDropAction()
- 当此
TransferSupport
表示放置操作时,返回为其选择的动作。除非通过
setDropAction
显式地选择,否则此方法返回getUserDropAction
提供的用户放置动作。可以使用
TransferHandler
的importData
方法查询此动作,以便根据该动作自定义处理方法。此方法只用于拖放传输。
isDrop()
为false
时调用此方法将导致IllegalStateException
。 - 返回:
- 为放置操作选择的动作 throws IllegalStateException 如果此 TransferSupport 不是一个放置操作
- 另请参见:
setDropAction(int)
,getUserDropAction()
,isDrop