模块 java.desktop

类 DropTarget

java.lang.Object
java.awt.dnd.DropTarget
所有已实现的接口:
DropTargetListener , Serializable , EventListener

public class DropTarget extends Object implements DropTargetListener , Serializable
Component 希望在拖放操作期间接受拖放时,DropTargetComponent 相关联。

每个 DropTarget 都与一个 FlavorMap 相关联。默认的 FlavorMap 此后指定 SystemFlavorMap.getDefaultFlavorMap() 返回的 FlavorMap

自从:
1.2
参见:
  • 内部类总结

    内部类
    修饰符和类型
    描述
    protected static class 
    这个受保护的内部类实现了自动滚动
  • 构造方法总结

    构造方法
    构造方法
    描述
    创建一个 DropTarget
    创建一个 DropTarget,给定 Component 与自身关联,一个 int 表示要支持的默认可接受操作,以及一个 DropTargetListener 来处理事件处理。
    DropTarget(Component c, int ops, DropTargetListener dtl, boolean act)
    创建一个 DropTarget 给定 Component 与自身关联,一个 int 表示要支持的默认可接受操作,一个 DropTargetListener 处理事件处理,以及一个 boolean 指示 DropTarget 当前是否正在接受丢弃。
    DropTarget(Component c, int ops, DropTargetListener dtl, boolean act, FlavorMap fm)
    创建一个新的 DropTarget,给定 Component 与自身关联,一个 int 表示要支持的默认可接受操作,一个 DropTargetListener 处理事件处理,一个 boolean 指示 DropTarget 当前是否正在接受丢弃,以及一个 FlavorMap 使用(或默认值 FlavorMap 为空)。
    创建一个 DropTarget,给定 Component 与自身关联,以及 DropTargetListener 处理事件处理。
  • 方法总结

    修饰符和类型
    方法
    描述
    void
    添加一个新的 DropTargetListener(单播源)。
    void
    通知 DropTarget 它已与组件相关联 通常从与此 DropTarget 相关联的组件的 java.awt.Component.addNotify() 调用此方法,以通知 DropTarget ComponentPeer 已与该组件相关联。
    protected void
    清除自动滚动
    创建一个嵌入式自动滚动器
    创建与此 DropTarget 关联的 DropTargetContext。
    void
    在注册的 DropTargetListener 上调用 dragEnter 并将指定的 DropTargetDragEvent 传递给它。
    void
    在已注册的 DropTargetListener 上调用 dragExit 并将指定的 DropTargetEvent 传递给它。
    void
    在注册的 DropTargetListener 上调用 dragOver 并将指定的 DropTargetDragEvent 传递给它。
    void
    在已注册的 DropTargetListener 上调用 drop,如果此 DropTarget 处于活动状态,则将其传递给指定的 DropTargetDropEvent
    void
    在已注册的 DropTargetListener 上调用 dropActionChanged 并将指定的 DropTargetDragEvent 传递给它。
    获取与此 DropTarget 关联的 Component
    int
    获取表示此 DropTarget 支持的当前操作的 int
    获取与此 DropTarget 关联的 DropTargetContext
    获取与此 DropTarget 关联的 FlavorMap
    protected void
    初始化自动滚动
    boolean
    报告此 DropTarget 当前是否处于活动状态(准备接受丢弃)。
    void
    删除当前的 DropTargetListener (UNICAST SOURCE)。
    void
    通知 DropTarget 它已与组件解除关联 通常从与此 DropTarget 关联的组件的 java.awt.Component.removeNotify() 调用此方法,以通知 DropTarget ComponentPeer 已与该组件解除关联。
    void
    setActive(boolean isActive)
    如果 true 则设置 DropTarget 活动,如果 false 则设置为非活动。
    void
    注意:此接口需要以两种方式之一允许 DropTarget 与 Component 的安全关联:component.setDropTarget(droptarget);droptarget.setComponent(component);
    void
    为此 DropTarget 设置默认可接受的操作
    void
    设置与此 DropTarget 关联的 FlavorMap
    protected void
    updateAutoscroll(Point dragCursorLocn)
    使用当前光标位置更新自动滚动

    在类 java.lang.Object 中声明的方法

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • 构造方法详细信息

    • DropTarget

      public DropTarget(Component  c, int ops, DropTargetListener  dtl, boolean act, FlavorMap  fm) throws HeadlessException
      创建一个新的 DropTarget,给定 Component 与自身关联,一个 int 表示要支持的默认可接受操作,一个 DropTargetListener 处理事件处理,一个 boolean 指示 DropTarget 当前是否正在接受丢弃,以及一个 FlavorMap 使用(或默认值 FlavorMap 为空)。

      该组件只有在启用时才会收到掉落物。

      参数:
      c - 与此 DropTarget 关联的 Component
      ops - 此 DropTarget 的默认可接受操作
      dtl - 这个 DropTargetDropTargetListener
      act - 是 DropTarget 接受掉落。
      fm - 要使用的 FlavorMap,或者默认 FlavorMap 为 null
      抛出:
      HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true
      参见:
    • DropTarget

      public DropTarget(Component  c, int ops, DropTargetListener  dtl, boolean act) throws HeadlessException
      创建一个 DropTarget 给定 Component 与自身关联,一个 int 表示要支持的默认可接受操作,一个 DropTargetListener 处理事件处理,以及一个 boolean 指示 DropTarget 当前是否正在接受丢弃。

      该组件只有在启用时才会收到掉落物。

      参数:
      c - 与此 DropTarget 关联的 Component
      ops - 此 DropTarget 的默认可接受操作
      dtl - 这个 DropTargetDropTargetListener
      act - 是 DropTarget 接受掉落。
      抛出:
      HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true
      参见:
    • DropTarget

      public DropTarget() throws HeadlessException
      创建一个 DropTarget
      抛出:
      HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true
      参见:
    • DropTarget

      public DropTarget(Component  c, DropTargetListener  dtl) throws HeadlessException
      创建一个 DropTarget,给定 Component 与自身关联,以及 DropTargetListener 处理事件处理。

      该组件只有在启用时才会收到掉落物。

      参数:
      c - 与此 DropTarget 关联的 Component
      dtl - 这个 DropTargetDropTargetListener
      抛出:
      HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true
      参见:
    • DropTarget

      public DropTarget(Component  c, int ops, DropTargetListener  dtl) throws HeadlessException
      创建一个 DropTarget,给定 Component 与自身关联,一个 int 表示要支持的默认可接受操作,以及一个 DropTargetListener 来处理事件处理。

      该组件只有在启用时才会收到掉落物。

      参数:
      c - 与此 DropTarget 关联的 Component
      ops - 此 DropTarget 的默认可接受操作
      dtl - 这个 DropTargetDropTargetListener
      抛出:
      HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true
      参见:
  • 方法详情

    • setComponent

      public void setComponent(Component  c)
      注意:此接口需要以两种方式之一允许 DropTarget 与 Component 的安全关联:component.setDropTarget(droptarget);droptarget.setComponent(component);

      该组件只有在启用时才会收到掉落物。

      参数:
      c - 新的 Component 与此 DropTarget 关联。
    • getComponent

      public 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 (in)active。
    • isActive

      public boolean isActive()
      报告此 DropTarget 当前是否处于活动状态(准备接受丢弃)。
      返回:
      true 如果激活,false 如果不激活
    • addDropTargetListener

      public void addDropTargetListener(DropTargetListener  dtl) throws TooManyListenersException
      添加一个新的 DropTargetListener(单播源)。
      参数:
      dtl - 新的 DropTargetListener
      抛出:
      TooManyListenersException - 如果一个 DropTargetListener 已经添加到这个 DropTarget
    • removeDropTargetListener

      public void removeDropTargetListener(DropTargetListener  dtl)
      删除当前的 DropTargetListener (UNICAST SOURCE)。
      参数:
      dtl - 要注销的 DropTargetListener。
    • dragEnter

      public void dragEnter(DropTargetDragEvent  dtde)
      在注册的 DropTargetListener 上调用 dragEnter 并将指定的 DropTargetDragEvent 传递给它。如果此 DropTarget 未激活,则无效。
      指定者:
      dragEnter 在接口 DropTargetListener
      参数:
      dtde - DropTargetDragEvent
      抛出:
      NullPointerException - 如果此 DropTarget 处于活动状态且 dtdenull
      参见:
    • dragOver

      public void dragOver(DropTargetDragEvent  dtde)
      在注册的 DropTargetListener 上调用 dragOver 并将指定的 DropTargetDragEvent 传递给它。如果此 DropTarget 未激活,则无效。
      指定者:
      dragOver 在接口 DropTargetListener
      参数:
      dtde - DropTargetDragEvent
      抛出:
      NullPointerException - 如果此 DropTarget 处于活动状态且 dtdenull
      参见:
    • dropActionChanged

      public void dropActionChanged(DropTargetDragEvent  dtde)
      在已注册的 DropTargetListener 上调用 dropActionChanged 并将指定的 DropTargetDragEvent 传递给它。如果此 DropTarget 未激活,则无效。
      指定者:
      dropActionChanged 在接口 DropTargetListener
      参数:
      dtde - DropTargetDragEvent
      抛出:
      NullPointerException - 如果此 DropTarget 处于活动状态且 dtdenull
      参见:
    • dragExit

      public void dragExit(DropTargetEvent  dte)
      在已注册的 DropTargetListener 上调用 dragExit 并将指定的 DropTargetEvent 传递给它。如果此 DropTarget 未激活,则无效。

      此方法本身不会为 null 参数抛出任何异常,而是针对监听的相应方法抛出的异常。

      指定者:
      dragExit 在接口 DropTargetListener
      参数:
      dte - DropTargetEvent
      参见:
    • drop

      public void drop(DropTargetDropEvent  dtde)
      在已注册的 DropTargetListener 上调用 drop,如果此 DropTarget 处于活动状态,则将其传递给指定的 DropTargetDropEvent
      指定者:
      drop 在接口 DropTargetListener
      参数:
      dtde - DropTargetDropEvent
      抛出:
      NullPointerException - 如果 dtde 为 null 并且至少满足以下条件之一:此 DropTarget 未激活,或者没有 DropTargetListener 注册。
      参见:
    • getFlavorMap

      public FlavorMap  getFlavorMap()
      获取与此 DropTarget 关联的 FlavorMap。如果没有为这个 DropTarget 设置 FlavorMap,它与默认的 FlavorMap 相关联。
      返回:
      此 DropTarget 的 FlavorMap
    • setFlavorMap

      public void setFlavorMap(FlavorMap  fm)
      设置与此 DropTarget 关联的 FlavorMap
      参数:
      fm - 新的 FlavorMap 或 null 以将默认的 FlavorMap 与此 DropTarget 相关联。
    • addNotify

      public void addNotify()
      通知 DropTarget 它已与组件相关联 通常从与此 DropTarget 相关联的组件的 java.awt.Component.addNotify() 调用此方法,以通知 DropTarget ComponentPeer 已与该组件相关联。调用此方法,而不是通知此 DropTarget ComponentPeer 与 Component 的关联可能会导致 DnD 系统出现故障。
    • removeNotify

      public void removeNotify()
      通知 DropTarget 它已与组件解除关联 通常从与此 DropTarget 关联的组件的 java.awt.Component.removeNotify() 调用此方法,以通知 DropTarget ComponentPeer 已与该组件解除关联。调用此方法,而不是通知此 DropTarget ComponentPeer 与 Component 的解除关联可能会导致 DnD 系统出现故障。
    • getDropTargetContext

      public DropTargetContext  getDropTargetContext()
      获取与此 DropTarget 关联的 DropTargetContext
      返回:
      与此 DropTarget 关联的 DropTargetContext
    • createDropTargetContext

      protected DropTargetContext  createDropTargetContext()
      创建与此 DropTarget 关联的 DropTargetContext。子类可以重写此方法以实例化自己的 DropTargetContext 子类。当拖动操作遇到此 DropTarget 时,此调用通常*仅*由平台的 DropTargetContextPeer 调用。在当前没有 Drag 时访问 Context 会产生未定义的结果。
      返回:
      与此 DropTarget 关联的 DropTargetContext
    • createDropTargetAutoScroller

      protected DropTarget.DropTargetAutoScroller  createDropTargetAutoScroller(Component  c, Point  p)
      创建一个嵌入式自动滚动器
      参数:
      c - Component
      p - Point
      返回:
      嵌入式自动滚动器
    • initializeAutoscrolling

      protected void initializeAutoscrolling(Point  p)
      初始化自动滚动
      参数:
      p - Point
    • updateAutoscroll

      protected void updateAutoscroll(Point  dragCursorLocn)
      使用当前光标位置更新自动滚动
      参数:
      dragCursorLocn - Point
    • clearAutoscroll

      protected void clearAutoscroll()
      清除自动滚动