Module java.desktop
Package java.awt.dnd

Class DropTargetAdapter

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

public abstract class DropTargetAdapter extends Object implements DropTargetListener
用于接收拖放目标事件的抽象适配器类。此类中的方法为空。此类仅作为创建监听器对象的便利而存在。

扩展此类以创建DropTargetEvent监听器,并重写感兴趣的事件方法。(如果实现DropTargetListener接口,则必须定义其中的所有方法。此抽象类为除drop(DropTargetDropEvent)之外的每个方法定义了空实现,因此您只需为您关心的事件定义方法。)您必须至少提供drop(DropTargetDropEvent)的实现。此方法不能具有空实现,因为其规范要求您接受或拒绝拖放,并在接受时指示拖放是否成功。

使用扩展类创建监听器对象,然后将其注册到DropTarget。当拖动进入、移动或退出该DropTarget的可操作部分时,当拖放操作更改时,以及当发生拖放时,将调用监听器对象中的相关方法,并将DropTargetEvent传递给它。

DropTarget的可操作部分是与相关Component的几何形状重叠的顶层窗口或具有关联的活动DropTarget的Z顺序中较高的另一个Component未遮挡的部分。

在拖动期间,可以通过在传递给监听器方法的DropTargetDragEvent实例上调用getTransferable()来检索与当前拖动操作关联的数据。

请注意,在DropTargetDragEvent实例上调用getTransferable()应仅在相应监听器方法内调用,并且在该方法返回之前应从返回的Transferable中检索所有必要的数据。

自:
1.4
参见:
  • Constructor Details

    • DropTargetAdapter

      protected DropTargetAdapter()
      构造一个DropTargetAdapter
  • Method Details

    • dragEnter

      public void dragEnter(DropTargetDragEvent dtde)
      在拖动操作正在进行时调用,当鼠标指针进入注册了此监听器的DropTarget的可操作部分时。
      指定者:
      dragEnter 在接口 DropTargetListener
      参数:
      dtde - DropTargetDragEvent
    • dragOver

      public void dragOver(DropTargetDragEvent dtde)
      在拖动操作正在进行时调用,当鼠标指针仍在注册了此监听器的DropTarget的可操作部分上方时。
      指定者:
      dragOver 在接口 DropTargetListener
      参数:
      dtde - DropTargetDragEvent
    • dropActionChanged

      public void dropActionChanged(DropTargetDragEvent dtde)
      如果用户修改了当前的拖放手势,则调用。
      指定者:
      dropActionChanged 在接口 DropTargetListener
      参数:
      dtde - DropTargetDragEvent
    • dragExit

      public void dragExit(DropTargetEvent dte)
      在拖动操作正在进行时调用,当鼠标指针退出注册了此监听器的DropTarget的可操作部分时。
      指定者:
      dragExit 在接口 DropTargetListener
      参数:
      dte - DropTargetEvent