Пакет java.awt.dnd

Перетаскивание — это жест прямого управления, встречающийся во многих системах графического интерфейса пользователя (GUI), который предоставляет механизм для передачи информации между двумя сущностями, логически связанными с элементами представления в GUI. Обычно управляемый физическим жестом пользователя с помощью соответствующего устройства ввода, Перетаскивание обеспечивает как механизм для предоставления непрерывной обратной связи относительно возможного результата последующей передачи данных пользователю во время перемещения по элементам представления в GUI, так и средства для последующего согласования и передачи данных.

Этот пакет определяет классы и интерфейсы, необходимые для выполнения операций перетаскивания и опускания в Java. Он определяет классы для источника перетаскивания и цели опускания, а также события для передачи перетаскиваемых данных. Этот пакет также предоставляет средства для предоставления визуальной обратной связи пользователю в течение всего периода операции перетаскивания и опускания.

Типичная операция перетаскивания и опускания может быть разбита на следующие состояния (не обязательно последовательно):

  • Возникает DragSource, связанный с каким-либо элементом представления (Component) в GUI, для инициирования перетаскивания и опускания потенциально Transferable данных.
  • 1 или более DropTarget(ы) возникают/исчезают, связанные с элементами представления в GUI (компонентами), потенциально способными потреблять Transferable типы данных.
  • Получается DragGestureRecognizer от DragSource и ассоциируется с Component для отслеживания и идентификации любого жеста инициирования перетаскивания пользователем над Component.
  • Пользователь производит жест перетаскивания над Component, который регистрируемый DragGestureRecognizer обнаруживает и уведомляет своего DragGestureListener об этом.

    Примечание: Хотя этот API постоянно ссылается на стимул для операции перетаскивания и опускания как на физический жест пользователя, это не исключает программной инициированной операции перетаскивания и опускания при надлежащей реализации DragSource. Этот пакет содержит абстрактный класс MouseDragGestureRecognizer для распознавания жестов устройства мыши. Другие абстрактные подклассы могут предоставляться платформой для поддержки других устройств ввода или определенных Component семантик класса.

  • DragGestureListener заставляет DragSource инициировать операцию перетаскивания и опускания от имени пользователя, возможно, анимируя курсор GUI и/или отображая Image элемента(ов), которые являются предметом операции.
  • Когда пользователь перемещает указатель над Component(ами) в GUI с соответствующими DropTarget(ами), DragSource получает уведомления для предоставления эффектов обратной связи «перетаскивание над», а DropTarget(ы) получают уведомления для предоставления эффектов обратной связи «перетаскивание под» на основе поддерживаемых операций и типов данных.

Сам жест перемещает логический курсор по иерархии GUI, пересекая геометрию компонента(ов) GUI, возможно, приводя к тому, что логический курсор «перетаскивания» входит, пересекает и впоследствии покидает Component(ы) и соответствующие DropTarget(ы).

Объект DragSource отображает пользователю обратную связь «перетаскивание над», в типичном случае, анимируя GUI Cursor связанный с логическим курсором.

Объекты DropTarget отображают пользователю обратную связь «перетаскивание под», в типичном случае, отображая анимации в соответствующие GUI Component(ы) под курсором GUI.

Определение эффектов обратной связи и окончательный успех или неудача передачи данных, если таковая произойдет, параметризуется следующим образом:

  • В зависимости от выбранной пользователем операции переноса, поддерживаемой как источником, так и приемником: Копия, Перемещение или Ссылка(ссылка).
  • По пересечению набора типов данных, предоставляемых DragSource и набора типов данных, понятных DropTarget.
  • Когда пользователь завершает операцию перетаскивания, обычно приводящую к успешному опусканию, как DragSource, так и DropTarget получают уведомления, которые включают в себя и приводят к согласованию типов и передаче информации, связанной с DragSource, через объект Transferable.
С:
1.2
ИнтерфейсОписание
Autoscroll

Во время операций перетаскивания и опускания пользователь может захотеть опустить объект операции в область прокручиваемого элемента управления GUI, которая в данный момент не видна пользователю.

DragGestureListener

Интерфейс слушателя для получения событий жестов перетаскивания.

DragSourceListener

DragSourceListener определяет интерфейс событий для инициаторов операций перетаскивания и опускания, чтобы отслеживать состояние жеста пользователя и предоставлять соответствующую обратную связь «перетаскивание над» пользователю в течение всей операции перетаскивания и опускания.

DragSourceMotionListener

Интерфейс слушателя для получения событий движения мыши во время операции перетаскивания.

DropTargetListener

Интерфейс DropTargetListener является интерфейсом обратного вызова, используемым классом DropTarget для предоставления уведомлений об операциях перетаскивания и опускания, которые затрагивают объект DropTarget.

КлассОписание
DnDConstants

Этот класс содержит постоянные значения, представляющие тип действия(й), которые должны быть выполнены операцией перетаскивания и опускания.

DragGestureEvent

DragGestureEvent передается методу dragGestureRecognized() DragGestureListener когда конкретный DragGestureRecognizer обнаруживает, что произошел зависящий от платформы жест инициирования перетаскивания на Component которое он отслеживает.

DragGestureRecognizer

DragGestureRecognizer — это абстрактный базовый класс для спецификации зависящего от платформы слушателя, который может быть связан с определенным Component для идентификации зависящих от платформы жестов инициирования перетаскивания.

DragSource

DragSource — это сущность, ответственная за инициирование операции перетаскивания и опускания, и может использоваться в нескольких сценариях: 1 экземпляр по умолчанию на JVM на протяжении всего срока существования этой JVM.

DragSourceAdapter

Абстрактный адаптер для получения событий источника перетаскивания.

DragSourceContext

Класс DragSourceContext отвечает за управление стороной инициатора протокола перетаскивания и опускания.

DragSourceDragEvent

DragSourceDragEvent доставляется из DragSourceContextPeer, через DragSourceContext, в DragSourceListener зарегистрированную с этим DragSourceContext и его соответствующим DragSource.

DragSourceDropEvent

DragSourceDropEvent доставляется из DragSourceContextPeer, через DragSourceContext, в метод dragDropEnd DragSourceListener зарегистрированных с этим DragSourceContext и его соответствующим DragSource.

DragSourceEvent

Этот класс является базовым классом для DragSourceDragEvent и DragSourceDropEvent.

DropTarget

DropTarget связывается с Component, когда этот Component хочет принимать опускания во время операций перетаскивания и опускания.

DropTarget.DropTargetAutoScroller

Этот защищенный вложенный класс реализует автопрокрутку

DropTargetAdapter

Абстрактный адаптер для получения событий цели опускания.

DropTargetContext

DropTargetContext создается всякий раз, когда логический курсор, связанный с операцией перетаскивания и опускания, совпадает с видимой геометрией Component связанной с DropTarget.

DropTargetDragEvent

DropTargetDragEvent доставляется в DropTargetListener через его методы dragEnter() и dragOver().

DropTargetDropEvent

DropTargetDropEvent доставляется через метод DropTargetListener drop().

DropTargetEvent

DropTargetEvent — это базовый класс как для DropTargetDragEvent, так и для DropTargetDropEvent.

MouseDragGestureRecognizer

Этот абстрактный подкласс DragGestureRecognizer определяет DragGestureRecognizer для жестов мыши.

ИсключениеОписание
InvalidDnDOperationException

Этот исключение выбрасывается различными методами в пакете java.awt.dnd.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/awt/dnd/package-summary.html

Spec-Zone .ru
спецификации, руководства, описания, API