DropTargetAdapter (Java SE 26 & JDK 26)
Description: declaration: module: java.desktop, package: java.awt.dnd, class: DropTargetAdapter
Keywords: java.awt.dnd.DropTargetAdapter class

# Class DropTargetAdapter

java.lang.Object
java.awt.dnd.DropTargetAdapter

All Implemented Interfaces:
  `DropTargetListener, EventListener`

public abstract class DropTargetAdapter extends Object implements DropTargetListener
An abstract adapter class for receiving drop target events. The methods in this class are empty. This class exists only as a convenience for creating listener objects.

Extend this class to create a `DropTargetEvent` listener and override the methods for the events of interest. (If you implement the `DropTargetListener` interface, you have to define all of the methods in it. This abstract class defines a null implementation for every method except `drop(DropTargetDropEvent)`, so you only have to define methods for events you care about.) You must provide an implementation for at least `drop(DropTargetDropEvent)`. This method cannot have a null implementation because its specification requires that you either accept or reject the drop, and, if accepted, indicate whether the drop was successful.

Create a listener object using the extended class and then register it with a `DropTarget`. When the drag enters, moves over, or exits the operable part of the drop site for that `DropTarget`, when the drop action changes, and when the drop occurs, the relevant method in the listener object is invoked, and the `DropTargetEvent` is passed to it.

The operable part of the drop site for the `DropTarget` is the part of the associated `Component`'s geometry that is not obscured by an overlapping top-level window or by another `Component` higher in the Z-order that has an associated active `DropTarget`.

During the drag, the data associated with the current drag operation can be retrieved by calling `getTransferable()` on `DropTargetDragEvent` instances passed to the listener's methods.

Note that `getTransferable()` on the `DropTargetDragEvent` instance should only be called within the respective listener's method and all the necessary data should be retrieved from the returned `Transferable` before that method returns.

Since:
  1.4
See Also:
  - `DropTargetEvent`
  - `DropTargetListener`

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `DropTargetAdapter()`
  Constructs a `DropTargetAdapter`.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `dragEnter(DropTargetDragEvent dtde)`
  Called while a drag operation is ongoing, when the mouse pointer enters the operable part of the drop site for the `DropTarget` registered with this listener.
  `void`
  `dragExit(DropTargetEvent dte)`
  Called while a drag operation is ongoing, when the mouse pointer has exited the operable part of the drop site for the `DropTarget` registered with this listener.
  `void`
  `dragOver(DropTargetDragEvent dtde)`
  Called when a drag operation is ongoing, while the mouse pointer is still over the operable part of the drop site for the `DropTarget` registered with this listener.
  `void`
  `dropActionChanged(DropTargetDragEvent dtde)`
  Called if the user has modified the current drop gesture.

  ### Methods declared in class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  Creates and returns a copy of this object.
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `protected void`
  `finalize()`
  Deprecated, for removal: This API element is subject to removal in a future version.
  Finalization is deprecated and subject to removal in a future release.
  `final Class<?>`
  `getClass()`
  Returns the runtime class of this `Object`.
  `int`
  `hashCode()`
  Returns a hash code value for this object.
  `final void`
  `notify()`
  Wakes up a single thread that is waiting on this object's monitor.
  `final void`
  `notifyAll()`
  Wakes up all threads that are waiting on this object's monitor.
  `String`
  `toString()`
  Returns a string representation of the object.
  `final void`
  `wait()`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
  `final void`
  `wait(long timeoutMillis)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  `final void`
  `wait(long timeoutMillis, int nanos)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

  ### Methods declared in interface DropTargetListener

  `drop`
  Modifier and Type
  Method
  Description
  `void`
  `drop(DropTargetDropEvent dtde)`
  Called when the drag operation has terminated with a drop on the operable part of the drop site for the `DropTarget` registered with this listener.

- ## Constructor Details

  - ### DropTargetAdapter

    protected DropTargetAdapter()
    Constructs a `DropTargetAdapter`.

- ## Method Details

  - ### dragEnter

    public void dragEnter(DropTargetDragEvent dtde)
    Called while a drag operation is ongoing, when the mouse pointer enters the operable part of the drop site for the `DropTarget` registered with this listener.
    Specified by:
      `dragEnter` in interface `DropTargetListener`
    Parameters:
      `dtde` - the `DropTargetDragEvent`

  - ### dragOver

    public void dragOver(DropTargetDragEvent dtde)
    Called when a drag operation is ongoing, while the mouse pointer is still over the operable part of the drop site for the `DropTarget` registered with this listener.
    Specified by:
      `dragOver` in interface `DropTargetListener`
    Parameters:
      `dtde` - the `DropTargetDragEvent`

  - ### dropActionChanged

    public void dropActionChanged(DropTargetDragEvent dtde)
    Called if the user has modified the current drop gesture.
    Specified by:
      `dropActionChanged` in interface `DropTargetListener`
    Parameters:
      `dtde` - the `DropTargetDragEvent`

  - ### dragExit

    public void dragExit(DropTargetEvent dte)
    Called while a drag operation is ongoing, when the mouse pointer has exited the operable part of the drop site for the `DropTarget` registered with this listener.
    Specified by:
      `dragExit` in interface `DropTargetListener`
    Parameters:
      `dte` - the `DropTargetEvent`