java.lang.Object
java.awt.dnd.DropTarget
- 所有已实现的接口:
-
DropTargetListener,Serializable,EventListener
DropTarget与Component关联,当该Component希望在拖放操作期间接受拖放时。
每个DropTarget都与一个FlavorMap相关联。默认的FlavorMap指的是SystemFlavorMap.getDefaultFlavorMap()返回的FlavorMap。
- 自从:
- 1.2
- 参见:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static class这个受保护的嵌套类实现了自动滚动 -
Constructor Summary
ConstructorsConstructorDescription创建一个DropTarget。DropTarget(Component c, int ops, DropTargetListener dtl) 给定要关联的Component,表示默认可接受操作的int,以及处理事件处理的DropTargetListener,创建一个DropTarget。DropTarget(Component c, int ops, DropTargetListener dtl, boolean act) 给定要关联的Component,表示默认可接受操作的int,处理事件处理的DropTargetListener,以及指示DropTarget当前是否接受拖放的boolean,创建一个DropTarget。DropTarget(Component c, int ops, DropTargetListener dtl, boolean act, FlavorMap fm) 给定要关联的Component,表示默认可接受操作的int,处理事件处理的DropTargetListener,指示DropTarget当前是否接受拖放的boolean,以及要使用的FlavorMap(或默认FlavorMap的null),创建一个新的DropTarget。DropTarget(Component c, DropTargetListener dtl) 给定要关联的Component和处理事件处理的DropTargetListener,创建一个DropTarget。 -
Method Summary
Modifier and TypeMethodDescriptionvoid添加一个新的DropTargetListener(单播源)。void通知DropTarget它已与一个Component关联。通常从与此DropTarget关联的Component的java.awt.Component.addNotify()中调用此方法,以通知DropTarget已将ComponentPeer与该Component关联。protected void清除自动滚动protected DropTarget.DropTargetAutoScroller创建一个嵌入式自动滚动器protected DropTargetContext创建与此DropTarget关联的DropTargetContext。voiddragEnter(DropTargetDragEvent dtde) 在注册的DropTargetListener上调用dragEnter,并传递指定的DropTargetDragEvent。voiddragExit(DropTargetEvent dte) 在注册的DropTargetListener上调用dragExit,并传递指定的DropTargetEvent。voiddragOver(DropTargetDragEvent dtde) 在注册的DropTargetListener上调用dragOver,并传递指定的DropTargetDragEvent。voiddrop(DropTargetDropEvent dtde) 如果此DropTarget处于活动状态,则在注册的DropTargetListener上调用drop,并传递指定的DropTargetDropEvent。void在注册的DropTargetListener上调用dropActionChanged,并传递指定的DropTargetDragEvent。获取与此DropTarget关联的Component。int获取表示此DropTarget当前支持的操作的int。获取与此DropTarget关联的DropTargetContext。获取与此DropTarget关联的FlavorMap。protected void初始化自动滚动booleanisActive()报告此DropTarget当前是否活动(准备接受拖放)。void移除当前的DropTargetListener(单播源)。void通知DropTarget它已与一个Component解除关联。通常从与此DropTarget关联的Component的java.awt.Component.removeNotify()中调用此方法,以通知DropTarget已将ComponentPeer与该Component解除关联。voidsetActive(boolean isActive) 如果为true,则设置DropTarget为活动状态;如果为false,则设置为非活动状态。void注意:此接口要求以两种方式之一安全地将DropTarget与Component关联,即:component.setDropTarget(droptarget);或droptarget.setComponent(component);voidsetDefaultActions(int ops) 设置此DropTarget的默认可接受操作。void设置与此DropTarget关联的FlavorMap。protected voidupdateAutoscroll(Point dragCursorLocn) 使用当前光标位置更新自动滚动
-
Constructor Details
-
DropTarget
public DropTarget(Component c, int ops, DropTargetListener dtl, boolean act, FlavorMap fm) throws HeadlessException 给定要关联的Component,表示默认可接受操作的int,处理事件处理的DropTargetListener,指示DropTarget当前是否接受拖放的boolean,以及要使用的FlavorMap(或默认FlavorMap的null),创建一个新的DropTarget。只有启用的Component才会接收拖放。
- 参数:
-
c- 与此DropTarget关联的Component -
ops- 此DropTarget的默认可接受操作 -
dtl- 此DropTarget的DropTargetListener -
act-DropTarget是否接受拖放 -
fm- 要使用的FlavorMap,或默认FlavorMap的null - 抛出:
-
HeadlessException- 如果GraphicsEnvironment.isHeadless()返回true - 参见:
-
DropTarget
public DropTarget(Component c, int ops, DropTargetListener dtl, boolean act) throws HeadlessException 给定要关联的Component,表示默认可接受操作的int,处理事件处理的DropTargetListener,以及指示DropTarget当前是否接受拖放的boolean,创建一个DropTarget。只有启用的Component才会接收拖放。
- 参数:
-
c- 与此DropTarget关联的Component -
ops- 此DropTarget的默认可接受操作 -
dtl- 此DropTarget的DropTargetListener -
act-DropTarget是否接受拖放 - 抛出:
-
HeadlessException- 如果GraphicsEnvironment.isHeadless()返回true - 参见:
-
DropTarget
创建一个DropTarget。- 抛出:
-
HeadlessException- 如果GraphicsEnvironment.isHeadless()返回true - 参见:
-
DropTarget
给定要关联的Component和处理事件处理的DropTargetListener,创建一个DropTarget。只有启用的Component才会接收拖放。
- 参数:
-
c- 与此DropTarget关联的Component -
dtl- 此DropTarget的DropTargetListener - 抛出:
-
HeadlessException- 如果GraphicsEnvironment.isHeadless()返回true - 参见:
-
DropTarget
给定要关联的Component,表示默认可接受操作的int,以及处理事件处理的DropTargetListener,创建一个DropTarget。只有启用的Component才会接收拖放。
- 参数:
-
c- 与此DropTarget关联的Component -
ops- 此DropTarget的默认可接受操作 -
dtl- 此DropTarget的DropTargetListener - 抛出:
-
HeadlessException- 如果GraphicsEnvironment.isHeadless()返回true - 参见:
-
-
Method Details
-
setComponent
注意:此接口要求以两种方式之一安全地将DropTarget与Component关联,即:component.setDropTarget(droptarget);或droptarget.setComponent(component);只有启用的Component才会接收拖放。
- 参数:
-
c- 要将此DropTarget关联的新Component
-
getComponent
获取与此DropTarget关联的Component。- 返回:
-
当前
Component
-
setDefaultActions
public void setDefaultActions(int ops) 设置此DropTarget的默认可接受操作。- 参数:
-
ops- 默认操作 - 参见:
-
getDefaultActions
public int getDefaultActions()获取表示此DropTarget当前支持的操作的int。- 返回:
- 当前默认操作
-
setActive
public void setActive(boolean isActive) 如果true,则设置DropTarget为活动状态;如果false,则设置为非活动状态。- 参数:
-
isActive- 设置DropTarget的活动状态。
-
isActive
public boolean isActive()报告此DropTarget当前是否处于活动状态(准备接受拖放)。- 返回:
-
如果活动,则返回
true;如果非活动,则返回false。
-
addDropTargetListener
添加新的DropTargetListener(单播源)。- 参数:
-
dtl- 新的DropTargetListener - 抛出:
-
TooManyListenersException- 如果已经向此DropTarget添加了一个DropTargetListener。
-
removeDropTargetListener
移除当前的DropTargetListener(单播源)。- 参数:
-
dtl- 要注销的DropTargetListener。
-
dragEnter
在已注册的DropTargetListener上调用dragEnter,并将指定的DropTargetDragEvent传递给它。如果此DropTarget未处于活动状态,则不会产生任何效果。- 指定者:
-
dragEnter在接口DropTargetListener中 - 参数:
-
dtde-DropTargetDragEvent - 抛出:
-
NullPointerException- 如果此DropTarget处于活动状态且dtde为null - 参见:
-
dragOver
在已注册的DropTargetListener上调用dragOver,并将指定的DropTargetDragEvent传递给它。如果此DropTarget未处于活动状态,则不会产生任何效果。- 指定者:
-
dragOver在接口DropTargetListener中 - 参数:
-
dtde-DropTargetDragEvent - 抛出:
-
NullPointerException- 如果此DropTarget处于活动状态且dtde为null - 参见:
-
dropActionChanged
在已注册的DropTargetListener上调用dropActionChanged,并将指定的DropTargetDragEvent传递给它。如果此DropTarget未处于活动状态,则不会产生任何效果。- 指定者:
-
dropActionChanged在接口DropTargetListener中 - 参数:
-
dtde-DropTargetDragEvent - 抛出:
-
NullPointerException- 如果此DropTarget处于活动状态且dtde为null - 参见:
-
dragExit
在已注册的DropTargetListener上调用dragExit,并将指定的DropTargetEvent传递给它。如果此DropTarget未处于活动状态,则不会产生任何效果。此方法本身不会因为空参数而抛出异常,但会因为监听器的相应方法抛出的异常而导致异常。
- 指定者:
-
dragExit在接口DropTargetListener中 - 参数:
-
dte-DropTargetEvent - 参见:
-
drop
如果此DropTarget处于活动状态,则在已注册的DropTargetListener上调用drop,并将指定的DropTargetDropEvent传递给它。- 指定者:
-
drop在接口DropTargetListener中 - 参数:
-
dtde-DropTargetDropEvent - 抛出:
-
NullPointerException- 如果dtde为null,并且以下至少一项为真:此DropTarget未处于活动状态,或者未注册DropTargetListener。 - 参见:
-
getFlavorMap
获取与此DropTarget关联的FlavorMap。如果未为此DropTarget设置FlavorMap,则将其与默认的FlavorMap关联。- 返回:
- 此DropTarget的FlavorMap
-
setFlavorMap
设置与此DropTarget关联的FlavorMap。- 参数:
-
fm- 新的FlavorMap,或者使用默认的FlavorMap关联此DropTarget。
-
addNotify
public void addNotify()通知DropTarget已与组件关联。通常从与此DropTarget关联的组件的java.awt.Component.addNotify()中调用此方法,以通知DropTarget已将ComponentPeer与该组件关联。除了通知此DropTarget与ComponentPeer的关联之外,调用此方法可能导致DnD系统出现故障。 -
removeNotify
public void removeNotify()通知DropTarget已与组件取消关联。通常从与此DropTarget关联的组件的java.awt.Component.removeNotify()中调用此方法,以通知DropTarget已将ComponentPeer与该组件取消关联。除了通知此DropTarget与ComponentPeer的取消关联之外,调用此方法可能导致DnD系统出现故障。 -
getDropTargetContext
获取与此DropTarget关联的DropTargetContext。- 返回:
-
与此
DropTarget关联的DropTargetContext。
-
createDropTargetContext
创建与此DropTarget关联的DropTargetContext。子类可以重写此方法以实例化自己的DropTargetContext子类。通常情况下,此调用仅由平台的DropTargetContextPeer在拖动操作遇到此DropTarget时调用。在没有当前拖动的情况下访问上下文会导致结果不确定。- 返回:
- 与此DropTarget关联的DropTargetContext
-
createDropTargetAutoScroller
创建一个嵌入式自动滚动器- 参数:
-
c-Component -
p-Point - 返回:
- 一个嵌入式自动滚动器
-
initializeAutoscrolling
初始化自动滚动- 参数:
-
p-Point
-
updateAutoscroll
使用当前光标位置更新自动滚动- 参数:
-
dragCursorLocn-Point
-
clearAutoscroll
protected void clearAutoscroll()清除自动滚动
-