Spec-Zone.ru › OpenJDK 21

Класс DragSourceContext

java.lang.Object
java.awt.dnd.DragSourceContext
Все реализованные интерфейсы:
DragSourceListener, DragSourceMotionListener, Serializable, EventListener
public class DragSourceContext extends Object implements DragSourceListener, DragSourceMotionListener, Serializable
Класс DragSourceContext отвечает за управление инициаторской стороной протокола перетаскивания. В частности, он отвечает за управление уведомлениями о событиях перетаскивания для DragSourceListeners и DragSourceMotionListeners, а также за предоставление Transferable, представляющего исходные данные для операции перетаскивания.

Обратите внимание, что сам DragSourceContext реализует интерфейсы DragSourceListener и DragSourceMotionListener. Это позволяет платформенному компоненту (экземпляру DragSourceContextPeer ), созданному DragSource, уведомлять DragSourceContext об изменениях состояния в текущей операции. Это позволяет объекту DragSourceContext встать между платформой и слушателями, предоставленными инициатором операции перетаскивания.

По умолчанию, DragSourceContext устанавливает курсор соответствующим образом для текущего состояния операции перетаскивания. Например, если пользователь выбрал действие перемещения, и указатель находится над целью, которая принимает действие перемещения, отображается курсор перемещения по умолчанию. Когда указатель находится над областью, которая не принимает передачу, отображается курсор «нет перетаскивания» по умолчанию.

Этот механизм обработки по умолчанию отключается, когда пользовательский курсор устанавливается методом setCursor(java.awt.Cursor). Когда обработка по умолчанию отключена, разработчик отвечает за обновление курсора, прослушивая события DragSource и вызывая метод setCursor(). В качестве альтернативы, вы можете обеспечить поведение пользовательского курсора, предоставив пользовательские реализации классов DragSource и DragSourceContext.

С момента:
1.2
См. также:
  • DragSourceListener
  • DragSourceMotionListener
  • DnDConstants
  • Serialized Form

Краткое описание полей

Модификатор и тип Поле Описание
protected static final int CHANGED
int используемый updateCurrentCursor(), указывающий на изменение операции пользователя.
protected static final int DEFAULT
int используемый updateCurrentCursor(), указывающий на то, что Cursor должен измениться на курсор Cursor по умолчанию (нет перетаскивания).
protected static final int ENTER
int используемый updateCurrentCursor(), указывающий на то, что Cursor вошёл в DropTarget.
protected static final int OVER
int используемый updateCurrentCursor(), указывающий на то, что Cursor находится над DropTarget.

Краткое описание конструкторов

Конструктор Описание
DragSourceContext(DragGestureEvent trigger, Cursor dragCursor, Image dragImage, Point offset, Transferable t, DragSourceListener dsl)
Вызывается из DragSource, этот конструктор создаёт новый DragSourceContext с учётом DragSourceContextPeer для этого перетаскивания, DragGestureEvent, который инициировал перетаскивание, начального Cursor для использования при перетаскивании, (необязательного) Image для отображения во время перетаскивания, смещения начала координат Image относительно точки привязки в момент запуска события, Transferable данных темы и DragSourceListener для использования во время операции перетаскивания.

Краткое описание методов

Модификатор и тип Метод Описание
void addDragSourceListener(DragSourceListener dsl)
Добавляет DragSourceListener к этому DragSourceContext, если он ещё не был добавлен.
void dragDropEnd(DragSourceDropEvent dsde)
Вызывает dragDropEnd для DragSourceListeners, зарегистрированных в этом DragSourceContext, и с связанным DragSource, и передаёт им указанный DragSourceDropEvent.
void dragEnter(DragSourceDragEvent dsde)
Вызывает dragEnter для DragSourceListeners, зарегистрированных в этом DragSourceContext, и с связанным DragSource, и передаёт им указанный DragSourceDragEvent.
void dragExit(DragSourceEvent dse)
Вызывает dragExit для DragSourceListeners, зарегистрированных в этом DragSourceContext, и с связанным DragSource, и передаёт им указанный DragSourceEvent.
void dragMouseMoved(DragSourceDragEvent dsde)
Вызывает dragMouseMoved для DragSourceMotionListeners, зарегистрированных с DragSource, связанным с этим DragSourceContext, и передаёт им указанный DragSourceDragEvent.
void dragOver(DragSourceDragEvent dsde)
Вызывает dragOver для DragSourceListeners, зарегистрированных в этом DragSourceContext, и с связанным DragSource, и передаёт им указанный DragSourceDragEvent.
void dropActionChanged(DragSourceDragEvent dsde)
Вызывает dropActionChanged для DragSourceListeners, зарегистрированных в этом DragSourceContext, и с связанным DragSource, и передаёт им указанный DragSourceDragEvent.
Component getComponent()
Возвращает Component, связанный с этим DragSourceContext.
Cursor getCursor()
Возвращает текущий пользовательский курсор перетаскивания Cursor.
DragSource getDragSource()
Возвращает DragSource, который создал этот DragSourceContext.
int getSourceActions()
Возвращает побитовую маску DnDConstants, представляющую набор действий перетаскивания, поддерживаемых источником перетаскивания для операции перетаскивания, связанной с этим DragSourceContext.
Transferable getTransferable()
Возвращает Transferable, связанный с этим DragSourceContext.
DragGestureEvent getTrigger()
Возвращает DragGestureEvent, который первоначально инициировал перетаскивание.
void removeDragSourceListener(DragSourceListener dsl)
Удаляет указанный DragSourceListener из этого DragSourceContext.
void setCursor(Cursor c)
Устанавливает пользовательский курсор для этой операции перетаскивания в указанный Cursor.
void transferablesFlavorsChanged()
Уведомляет компонент, что Transferable DataFlavor изменились.
protected void updateCurrentCursor(int sourceAct, int targetAct, int status)
Если активна обработка курсора перетаскивания по умолчанию, этот метод устанавливает курсор перетаскивания по умолчанию для указанных действий, поддерживаемых источником перетаскивания, действия целевого объекта и состояния; в противном случае этот метод ничего не делает.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание полей

DEFAULT

protected static final int DEFAULT
Значение, используемое методом updateCurrentCursor() для указания того, что курсор должен измениться на стандартный (без отпускания) курсор.
См. также:
  • Значения константных полей

ENTER

protected static final int ENTER
Значение, используемое методом updateCurrentCursor() для указания того, что курсор вошёл в целевую область.
См. также:
  • Значения константных полей

OVER

protected static final int OVER
Значение, используемое методом updateCurrentCursor() для указания того, что курсор находится над целевой областью.
См. также:
  • Значения константных полей

CHANGED

protected static final int CHANGED
Значение, используемое методом updateCurrentCursor() для указания изменения пользовательской операции.
См. также:
  • Значения константных полей

Подробное описание конструкторов

DragSourceContext

public DragSourceContext(DragGestureEvent trigger, Cursor dragCursor, Image dragImage, Point offset, Transferable t, DragSourceListener dsl)
Вызывается из DragSource, этот конструктор создаёт новый объект DragSourceContext, задавая параметры для перетаскивания: событие, вызвавшее перетаскивание, начальный курсор, (необязательное) изображение во время перетаскивания, смещение начала изображения от точки "горячей" области в момент события, переносимые данные, и набор допустимых действий перетаскивания и отпускания.
Если DragSourceContextPeer имеет значение null, выбрасывается NullPointerException.
Если DragGestureEvent имеет значение null, выбрасывается NullPointerException.
Если Cursor имеет значение null, исключение не выбрасывается, и для этой операции перетаскивания активируется поведение стандартного курсора.
Если Image имеет значение null, исключение не выбрасывается.
Если Image не является null, и смещение null NullPointerException, выбрасывается исключение.
Если Transferable имеет значение null, выбрасывается NullPointerException.
Если DragSourceListener имеет значение null, исключение не выбрасывается.
Параметры:
trigger - событие, вызвавшее перетаскивание
dragCursor - начальный курсор для данной операции перетаскивания или значение null для использования стандартного поведения курсора; см. документацию класса для получения дополнительной информации о механизме обработки курсора во время перетаскивания и отпускания
dragImage - переносимое изображение (или данные)
offset - смещение начала изображения от точки "горячей" области в момент события
t - переносимые данные
dsl - слушатель перетаскивания
Исключения:
IllegalArgumentException - если компонент, связанный с событием, не определён.
IllegalArgumentException - если действие перетаскивания для события недопустимо.
IllegalArgumentException - если действие перетаскивания для события недопустимо.
IllegalArgumentException - если набор доступных действий перетаскивания и отпускания не определён.
NullPointerException - если dscp, триггер или t равны null, или если dragImage не null, а offset null.

Подробное описание методов

getDragSource

public DragSource getDragSource()
Возвращает источник перетаскивания, который создал этот объект.
Возвращает:
источник перетаскивания

getComponent

public Component getComponent()
Возвращает компонент, связанный с этим контекстом перетаскивания.
Возвращает:
компонент, с которого началось перетаскивание

getTrigger

public DragGestureEvent getTrigger()
Возвращает событие, которое первоначально вызвало перетаскивание.
Возвращает:
событие, вызвавшее перетаскивание

getSourceActions

public int getSourceActions()
Возвращает битовую маску действий отпускания, поддерживаемых источником перетаскивания для операции перетаскивания, связанной с этим контекстом.
Возвращает:
поддерживаемые действия отпускания

setCursor

public void setCursor(Cursor c)
Устанавливает пользовательский курсор для данной операции перетаскивания. Если заданный курсор равен null, то активируется стандартное поведение курсора для перетаскивания, иначе оно отключается.
Параметры:
c - пользовательский курсор или null для использования стандартного поведения курсора; см. документацию класса для получения дополнительной информации о работе курсора во время перетаскивания

getCursor

public Cursor getCursor()
Возвращает текущий пользовательский курсор перетаскивания.
Возвращает:
текущий пользовательский курсор перетаскивания, если он был установлен, иначе возвращает null.
См. также:
  • setCursor(java.awt.Cursor)

addDragSourceListener

public void addDragSourceListener(DragSourceListener dsl) throws TooManyListenersException
Добавляет слушателя перетаскивания к этому контексту, если он ещё не добавлен. Если слушатель уже существует, метод выбрасывает исключение.
Параметры:
dsl - слушатель перетаскивания. Заметьте, что хотя null не запрещён, он неприемлем в качестве параметра.
Исключения:
TooManyListenersException - если слушатель уже добавлен

removeDragSourceListener

public void removeDragSourceListener(DragSourceListener dsl)
Удаляет указанного слушателя перетаскивания из этого контекста.
Параметры:
dsl - слушатель перетаскивания; заметьте, что null не запрещён, но неприемлем в качестве параметра

transferablesFlavorsChanged

public void transferablesFlavorsChanged()
Уведомляет peer о том, что типы переносимых данных изменились.

dragEnter

public void dragEnter(DragSourceDragEvent dsde)
Вызывает метод dragEnter у зарегистрированных слушателей перетаскивания, передавая им указанное событие.
Определено в:
dragEnter в интерфейсе DragSourceListener
Параметры:
dsde - событие перетаскивания

dragOver

public void dragOver(DragSourceDragEvent dsde)
Вызывает метод dragOver у зарегистрированных слушателей перетаскивания, передавая им указанное событие.
Определено в:
dragOver в интерфейсе DragSourceListener
Параметры:
dsde - событие перетаскивания

dragExit

public void dragExit(DragSourceEvent dse)
Вызывает метод dragExit у зарегистрированных слушателей перетаскивания, передавая им указанное событие.
Определено в:
dragExit в интерфейсе DragSourceListener
Параметры:
dse - событие перетаскивания

dropActionChanged

public void dropActionChanged(DragSourceDragEvent dsde)
Вызывает метод dropActionChanged у зарегистрированных слушателей перетаскивания, передавая им указанное событие.
Определено в:
dropActionChanged в интерфейсе DragSourceListener
Параметры:
dsde - событие перетаскивания

dragDropEnd

public void dragDropEnd(DragSourceDropEvent dsde)
Вызывает dragDropEnd для зарегистрированных DragSourceListener с этим DragSourceContext и связанным DragSource, передавая им указанное DragSourceDropEvent.
Specified by:
dragDropEnd в интерфейсе DragSourceListener
Parameters:
dsde - DragSourceDropEvent

dragMouseMoved

public void dragMouseMoved(DragSourceDragEvent dsde)
Вызывает dragMouseMoved для зарегистрированных DragSourceMotionListener с DragSource , связанным с этим DragSourceContext, и передает указанное DragSourceDragEvent.
Specified by:
dragMouseMoved в интерфейсе DragSourceMotionListener
Parameters:
dsde - DragSourceDragEvent
Since:
1.4

getTransferable

public Transferable getTransferable()
Возвращает Transferable , связанное с этим DragSourceContext.
Returns:
Transferable

updateCurrentCursor

protected void updateCurrentCursor(int sourceAct, int targetAct, int status)
Если активен стандартный режим курсора перетаскивания, этот метод устанавливает стандартный курсор перетаскивания для указанных действий, поддерживаемых источником перетаскивания, действием целевого объекта и статусом. В противном случае этот метод ничего не делает.
Parameters:
sourceAct - поддерживаемые источником перетаскивания действия
targetAct - действие целевого объекта
status - одно из полей DEFAULT, ENTER, OVER, CHANGED

© 1993, 2023, 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/21/docs/api/java.desktop/java/awt/dnd/DragSourceContext.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API