DropTargetAdapter

DropTargetAdapter (드롭 대상 어댑터)

드롭 대상 이벤트를 받기 위한 추상 어댑터 클래스입니다.

출처: Java API Reference

본문

public abstract class DropTargetAdapter extends Object implements DropTargetListener

이 클래스의 메서드는 비어 있습니다. 리스너 객체를 만드는 편의를 위해서만 존재합니다. 이 클래스를 확장해 DropTargetEvent 리스너를 만들고 관심 있는 이벤트의 메서드를 오버라이드합니다.

(DropTargetListener 인터페이스를 구현하면 그 안의 모든 메서드를 정의해야 하지만, 이 추상 클래스는 drop(DropTargetDropEvent)를 제외한 모든 메서드에 대해 null 구현을 정의하므로 관심 있는 이벤트에 대한 메서드만 정의하면 됩니다.)

최소한 drop(DropTargetDropEvent)에 대한 구현을 제공해야 합니다. 이 메서드는 명세상 드롭을 수락하거나 거부해야 하고, 수락한 경우 드롭이 성공했는지도 나타내야 하므로 null 구현을 가질 수 없습니다.

확장한 클래스로 리스너 객체를 만들고 이를 DropTarget에 등록합니다. 드래그가 해당 DropTarget의 드롭 사이트의 작동 가능한 부분에 들어가거나, 위로 이동하거나, 벗어날 때, 드롭 동작이 바뀔 때, 드롭이 발생할 때 리스너 객체의 해당 메서드가 호출되고 DropTargetEvent가 전달됩니다.

DropTarget의 드롭 사이트의 작동 가능한 부분은 연관된 컴포넌트의 지오메트리 중에서 겹치는 최상위 창이나 Z-순서가 더 높고 활성 DropTarget을 가진 다른 컴포넌트에 가려지지 않은 부분입니다.

드래그 중에는 리스너 메서드로 전달된 DropTargetDragEvent 인스턴스에서 getTransferable()을 호출해 현재 드래그 작업과 연관된 데이터를 얻을 수 있습니다. DropTargetDragEvent 인스턴스의 getTransferable()은 해당 리스너 메서드 안에서만 호출해야 하며, 필요한 모든 데이터는 그 메서드가 반환되기 전에 반환된 Transferable에서 꺼내야 합니다.

더 알아보기 (Learn more)

Java 공식 API