Spec-Zone.ru › OpenJDK 8

Класс DragSource

  • java.lang.Object
    • java.awt.dnd.DragSource
Все реализованные интерфейсы:
Serializable

public class DragSource
extends Object
implements Serializable

Сущность, ответственная за инициирование операции Перетаскивания и Опускания, может использоваться в нескольких сценариях:

  • 1 экземпляр на JVM на протяжении всего её существования.
  • 1 экземпляр на каждый потенциальный класс объекта-инициатора перетаскивания (например, TextField). [зависит от реализации]
  • 1 экземпляр на конкретный объект или приложение, связанный с экземпляром DragSource в графическом интерфейсе. [зависит от реализации]
  • Любое другое произвольное отношение. [зависит от реализации]
После получения экземпляра DragSource необходимо также получить DragGestureRecognizer, чтобы ассоциировать DragSource с конкретным компонентом.

Первоначальная интерпретация жеста пользователя и последующее начало операции перетаскивания являются обязанностью реализующего DragGestureRecognizer, который обычно реализуется классом DragGestureListener.

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

Метод startDrag() вызывает метод createDragSourceContext() для создания соответствующего DragSourceContext и связывает его с DragSource.

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

Обратите внимание, что набор операций, доступных источнику в начале операции перетаскивания, не может измениться до тех пор, пока операция не будет завершена. Операция(и) неизменна на протяжении всей операции относительно источника.

С момента:
1.2
См. также:
Serialized Form

Поля

Модификатор и тип Поле и описание
static Cursor DefaultCopyDrop

По умолчанию DragOperation для операции копирования, указывающая, что опускание в данный момент разрешено.

static Cursor DefaultCopyNoDrop

По умолчанию DragOperation для операции копирования, указывающая, что опускание в данный момент запрещено.

static Cursor DefaultLinkDrop

По умолчанию DragOperation для операции ссылки, указывающая, что опускание в данный момент разрешено.

static Cursor DefaultLinkNoDrop

По умолчанию DragOperation для операции ссылки, указывающая, что опускание в данный момент запрещено.

static Cursor DefaultMoveDrop

По умолчанию DragOperation для операции перемещения, указывающая, что опускание в данный момент разрешено.

static Cursor DefaultMoveNoDrop

По умолчанию DragOperation для операции перемещения, указывающая, что опускание в данный момент запрещено.

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

Конструктор и описание
DragSource()

Создаёт новый экземпляр DragSource.

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

Модификатор и тип Метод и описание
void addDragSourceListener(DragSourceListener dsl)

Добавляет указанный DragSourceListener к этому DragSource для получения событий источника перетаскивания во время операций перетаскивания, инициированных этим DragSource.

void addDragSourceMotionListener(DragSourceMotionListener dsml)

Добавляет указанный DragSourceMotionListener к этому DragSource для получения событий движения перетаскивания во время операций перетаскивания, инициированных этим DragSource.

DragGestureRecognizer createDefaultDragGestureRecognizer(Component c, int actions, DragGestureListener dgl)

Создаёт новый DragSourceContext, реализующий по умолчанию абстрактный подкласс DragGestureListener для этого DragSource, и устанавливает указанный DragSourceContext и DragGestureListener на вновь созданный объект.

<T extends DragGestureRecognizer>
T
createDragGestureRecognizer(Class<T> recognizerAbstractClass, Component c, int actions, DragGestureListener dgl)

Создаёт новый DragSourceContext, реализующий указанный абстрактный подкласс DragGestureListener, и устанавливает указанный DragSourceContext и DragGestureListener на вновь созданный объект.

protected DragSourceContext createDragSourceContext(java.awt.dnd.peer.DragSourceContextPeer dscp, DragGestureEvent dgl, Cursor dragCursor, Image dragImage, Point imageOffset, Transferable t, DragSourceListener dsl)

Создаёт DragSourceContext для обработки текущей операции перетаскивания.

static DragSource getDefaultDragSource()

Возвращает объект DragSourceContext, связанный с базовой платформой.

DragSourceListener[] getDragSourceListeners()

Возвращает всех DragSourceListener, зарегистрированных с этим DragSource.

DragSourceMotionListener[] getDragSourceMotionListeners()

Возвращает всех DragSourceMotionListener, зарегистрированных с этим DragSource.

static int getDragThreshold()

Возвращает порог движения жеста перетаскивания.

FlavorMap getFlavorMap()

Возвращает DragSourceContext для этого DragSource.

<T extends EventListener>
T[]
getListeners(Class<T> listenerType)

Возвращает все объекты, зарегистрированные в качестве DragGestureListener в этом DragSource.

static boolean isDragImageSupported()

Указывает, поддерживается ли перетаскивание на базовой платформе.

void removeDragSourceListener(DragSourceListener dsl)

Удаляет указанного DragSourceListener из этого DragSource.

void removeDragSourceMotionListener(DragSourceMotionListener dsml)

Удаляет указанного DragSourceMotionListener из этого DragSource.

void startDrag(DragGestureEvent trigger, Cursor dragCursor, Image dragImage, Point dragOffset, Transferable transferable, DragSourceListener dsl)

Инициализирует перетаскивание с использованием указанного DragGestureEvent, DragSourceContext, DragSource, смещения, данных и DragGestureRecognizer.

void startDrag(DragGestureEvent trigger, Cursor dragCursor, Image dragImage, Point imageOffset, Transferable transferable, DragSourceListener dsl, FlavorMap flavorMap)

Инициализирует перетаскивание с использованием указанного DragGestureEvent, DragSourceContext, DragSource, смещения, данных, DragGestureRecognizer и дополнительно DragSourceMotionListener.

void startDrag(DragGestureEvent trigger, Cursor dragCursor, Transferable transferable, DragSourceListener dsl)

Инициализирует перетаскивание с использованием указанного DragGestureEvent, DragSourceContext, данных и DragGestureRecognizer.

void startDrag(DragGestureEvent trigger, Cursor dragCursor, Transferable transferable, DragSourceListener dsl, FlavorMap flavorMap)

Инициализирует перетаскивание с использованием указанного DragGestureEvent, DragSourceContext, данных, DragSourceMotionListener и DragGestureRecognizer.

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

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

Поля

DefaultCopyDrop

public static final Cursor DefaultCopyDrop

Значение по умолчанию Cursor для операции копирования, указывающее, что перенос в данный момент разрешен. null если GraphicsEnvironment.isHeadless() возвращает true.

См. также:
GraphicsEnvironment.isHeadless()

DefaultMoveDrop

public static final Cursor DefaultMoveDrop

Значение по умолчанию Cursor для операции перемещения, указывающее, что перенос в данный момент разрешен. null если GraphicsEnvironment.isHeadless() возвращает true.

См. также:
GraphicsEnvironment.isHeadless()

DefaultLinkDrop

public static final Cursor DefaultLinkDrop

Значение по умолчанию Cursor для операции создания ссылки, указывающее, что перенос в данный момент разрешен. null если GraphicsEnvironment.isHeadless() возвращает true.

См. также:
GraphicsEnvironment.isHeadless()

DefaultCopyNoDrop

public static final Cursor DefaultCopyNoDrop

Значение по умолчанию Cursor для операции копирования, указывающее, что перенос в данный момент запрещен. null если GraphicsEnvironment.isHeadless() возвращает true.

См. также:
GraphicsEnvironment.isHeadless()

DefaultMoveNoDrop

public static final Cursor DefaultMoveNoDrop

Значение по умолчанию Cursor для операции перемещения, указывающее, что перенос в данный момент запрещен. null если GraphicsEnvironment.isHeadless() возвращает true.

См. также:
GraphicsEnvironment.isHeadless()

DefaultLinkNoDrop

public static final Cursor DefaultLinkNoDrop

Значение по умолчанию Cursor для операции создания ссылки, указывающее, что перенос в данный момент запрещен. null если GraphicsEnvironment.isHeadless() возвращает true.

См. также:
GraphicsEnvironment.isHeadless()

Конструкторы

DragSource

public DragSource()
           throws HeadlessException

Создает новый DragSource.

Исключения:
HeadlessException - если GraphicsEnvironment.isHeadless() возвращает true
См. также:
GraphicsEnvironment.isHeadless()

Методы

getDefaultDragSource

public static DragSource getDefaultDragSource()

Получает объект DragSource, связанный с базовой платформой.

Возвращает:
объект DragSource платформы
Исключения:
HeadlessException - если GraphicsEnvironment.isHeadless() возвращает true
См. также:
GraphicsEnvironment.isHeadless()

isDragImageSupported

public static boolean isDragImageSupported()

Сообщает, доступна ли поддержка перетаскивания изображений на базовой платформе.

Возвращает:
доступна ли поддержка перетаскивания изображений на этой платформе

startDrag

public void startDrag(DragGestureEvent trigger,
                      Cursor dragCursor,
                      Image dragImage,
                      Point imageOffset,
                      Transferable transferable,
                      DragSourceListener dsl,
                      FlavorMap flavorMap)
               throws InvalidDnDOperationException

Начинает перетаскивание, учитывая DragGestureEvent, инициировавший перетаскивание, начальный Cursor, используемый для перетаскивания, Image, смещение начала координат Image относительно точки доступа Cursor в момент срабатывания триггера, Transferable данные перетаскиваемого объекта, DragSourceListener, и FlavorMap.

Параметры:
trigger - DragGestureEvent, инициировавший перетаскивание
dragCursor - начальный Cursor для этой операции перетаскивания или null для обработки курсора по умолчанию; см. DragSourceContext для получения дополнительной информации о механизме обработки курсора во время перетаскивания
dragImage - перетаскиваемое изображение или null
imageOffset - смещение начала координат Image относительно точки доступа Cursor в момент срабатывания триггера
transferable - данные перетаскиваемого объекта
dsl - DragSourceListener
flavorMap - используемая FlavorMap, или null
Исключения:
InvalidDnDOperationException - если система перетаскивания не может начать операцию перетаскивания, или если пользователь пытается начать перетаскивание, пока выполняется другая операция перетаскивания

startDrag

public void startDrag(DragGestureEvent trigger,
                      Cursor dragCursor,
                      Transferable transferable,
                      DragSourceListener dsl,
                      FlavorMap flavorMap)
               throws InvalidDnDOperationException

Начинает перетаскивание, учитывая DragGestureEvent, инициировавший перетаскивание, начальный Cursor, используемый для перетаскивания, Transferable данные перетаскиваемого объекта, DragSourceListener, и FlavorMap.

Параметры:
trigger - DragGestureEvent, инициировавший перетаскивание
dragCursor - начальный Cursor для этой операции перетаскивания или null для обработки курсора по умолчанию; см. DragSourceContext для получения дополнительной информации о механизме обработки курсора во время перетаскивания
transferable - данные перетаскиваемого объекта
dsl - DragSourceListener
flavorMap - используемая FlavorMap или null
Исключения:
InvalidDnDOperationException - если система перетаскивания не может начать операцию перетаскивания, или если пользователь пытается начать перетаскивание, пока выполняется другая операция перетаскивания

startDrag

public void startDrag(DragGestureEvent trigger,
                      Cursor dragCursor,
                      Image dragImage,
                      Point dragOffset,
                      Transferable transferable,
                      DragSourceListener dsl)
               throws InvalidDnDOperationException

Начинает перетаскивание, учитывая DragGestureEvent, инициировавший перетаскивание, начальный Cursor, используемый для перетаскивания, Image, смещение начала координат Image относительно точки доступа Cursor в момент срабатывания триггера, данные перетаскиваемого объекта и DragSourceListener.

Параметры:
trigger - DragGestureEvent, инициировавший перетаскивание
dragCursor - начальный Cursor для этой операции перетаскивания или null для обработки курсора по умолчанию; см. DragSourceContext для получения дополнительной информации о механизме обработки курсора во время перетаскивания
dragImage - Image для перетаскивания или null
dragOffset - смещение начала координат Image относительно точки доступа Cursor в момент срабатывания триггера
transferable - данные перетаскиваемого объекта
dsl - DragSourceListener
Исключения:
InvalidDnDOperationException - если система перетаскивания не может начать операцию перетаскивания, или если пользователь пытается начать перетаскивание, пока выполняется другая операция перетаскивания

startDrag

public void startDrag(DragGestureEvent trigger,
                      Cursor dragCursor,
                      Transferable transferable,
                      DragSourceListener dsl)
               throws InvalidDnDOperationException

Начинает перетаскивание, учитывая DragGestureEvent, инициировавший перетаскивание, начальный Cursor, используемый для перетаскивания, Transferable данные перетаскиваемого объекта и DragSourceListener.

Параметры:
trigger - DragGestureEvent, инициировавший перетаскивание
dragCursor - начальный Cursor для этой операции перетаскивания или null для обработки курсора по умолчанию; см. класс DragSourceContext для получения дополнительной информации о механизме обработки курсора во время перетаскивания
transferable - данные перетаскиваемого объекта
dsl - DragSourceListener
Исключения:
InvalidDnDOperationException - если система перетаскивания не может начать операцию перетаскивания, или если пользователь пытается начать перетаскивание, пока выполняется другая операция перетаскивания

createDragSourceContext

protected DragSourceContext createDragSourceContext(java.awt.dnd.peer.DragSourceContextPeer dscp,
                                                    DragGestureEvent dgl,
                                                    Cursor dragCursor,
                                                    Image dragImage,
                                                    Point imageOffset,
                                                    Transferable t,
                                                    DragSourceListener dsl)

Создает DragSourceContext для обработки текущей операции перетаскивания.

Для включения нового подкласса DragSourceContext, создайте подкласс DragSource и переопределите этот метод.

Если dragImage равно null, для представления обратной связи о перетаскивании не используется изображение, но NullPointerException не вызывается.

Если dsl равно null, ни один прослушиватель источника перетаскивания не регистрируется с созданным DragSourceContext, но NullPointerException не вызывается.

Параметры:
dscp - Перетаскиваемый DragSourceContextPeer для этого перетаскивания
dgl - DragGestureEvent , вызвавшее перетаскивание
dragCursor - Начальное Cursor для этой операции перетаскивания или null для обработки курсора по умолчанию; см. класс DragSourceContext для получения более подробной информации о механизме обработки курсора во время перетаскивания и перемещения
dragImage - Image для перетаскивания или null
imageOffset - Смещение начала Image от точки привязки курсора в момент срабатывания
t - Данные объекта перетаскивания
dsl - DragSourceListener
Возвращает:
значение DragSourceContext
Исключение:
NullPointerException - если dscp является null
NullPointerException - если dgl является null
NullPointerException - если dragImage не является null и imageOffset является null
NullPointerException - если t является null
IllegalArgumentException - если Component , связанное с событием срабатывания, является null.
IllegalArgumentException - если DragSource для события срабатывания является null.
IllegalArgumentException - если действие перетаскивания для события срабатывания является DnDConstants.ACTION_NONE.
IllegalArgumentException - если действия источника для DragGestureRecognizer , связанного с событием срабатывания, равны DnDConstants.ACTION_NONE.

getFlavorMap

public FlavorMap getFlavorMap()

Этот метод возвращает FlavorMap для этого DragSource.

Возвращает:
значение FlavorMap для этого DragSource

createDragGestureRecognizer

public <T extends DragGestureRecognizer> T createDragGestureRecognizer(Class<T> recognizerAbstractClass,
                                                                       Component c,
                                                                       int actions,
                                                                       DragGestureListener dgl)

Создает новый DragGestureRecognizer , реализующий указанный абстрактный подкласс DragGestureRecognizer, и устанавливает указанные Component и DragGestureListener на вновь созданный объект.

Параметры:
recognizerAbstractClass - запрашиваемый абстрактный тип
actions - разрешенные действия перетаскивания источника
c - целевой Component
dgl - DragGestureListener для уведомления
Возвращает:
новый DragGestureRecognizer или null , если метод Toolkit.createDragGestureRecognizer не имеет реализации для запрошенного подкласса DragGestureRecognizer и возвращает null

createDefaultDragGestureRecognizer

public DragGestureRecognizer createDefaultDragGestureRecognizer(Component c,
                                                                int actions,
                                                                DragGestureListener dgl)

Создает новый DragGestureRecognizer , реализующий по умолчанию абстрактный подкласс DragGestureRecognizer для этого DragSource, и устанавливает указанные Component и DragGestureListener на вновь созданный объект. Для этого DragSource значение по умолчанию равно MouseDragGestureRecognizer.

Параметры:
c - целевой Component для распознавателя
actions - разрешенные действия источника
dgl - DragGestureListener для уведомления
Возвращает:
новый DragGestureRecognizer или null , если метод Toolkit.createDragGestureRecognizer не имеет реализации для запрошенного подкласса DragGestureRecognizer и возвращает null

addDragSourceListener

public void addDragSourceListener(DragSourceListener dsl)

Добавляет указанного DragSourceListener к этому DragSource для получения событий источника перетаскивания во время операций перетаскивания, инициированных этим DragSource. Если задан слушатель null , никакие действия не выполняются и исключение не выбрасывается.

Параметры:
dsl - DragSourceListener для добавления
Since:
1.4
См. также:
removeDragSourceListener(java.awt.dnd.DragSourceListener), getDragSourceListeners()

removeDragSourceListener

public void removeDragSourceListener(DragSourceListener dsl)

Удаляет указанного DragSourceListener из этого DragSource. Если задан слушатель null , никакие действия не выполняются и исключение не выбрасывается. Если слушатель, указанный в аргументе, ранее не был добавлен к этому DragSource, никакие действия не выполняются и исключение не выбрасывается.

Параметры:
dsl - DragSourceListener для удаления
Since:
1.4
См. также:
addDragSourceListener(java.awt.dnd.DragSourceListener), getDragSourceListeners()

getDragSourceListeners

public DragSourceListener[] getDragSourceListeners()

Возвращает всех DragSourceListener , зарегистрированных с этим DragSource.

Возвращает:
все DragSource этого DragSource или пустой массив, если такие слушатели не зарегистрированы
Since:
1.4
См. также:
addDragSourceListener(java.awt.dnd.DragSourceListener), removeDragSourceListener(java.awt.dnd.DragSourceListener)

addDragSourceMotionListener

public void addDragSourceMotionListener(DragSourceMotionListener dsml)

Добавляет указанного DragSourceMotionListener к этому DragSource для получения событий движения перетаскивания во время операций перетаскивания, инициированных этим DragSource. Если задан слушатель null , никакие действия не выполняются и исключение не выбрасывается.

Параметры:
dsml - DragSourceMotionListener для добавления
Since:
1.4
См. также:
removeDragSourceMotionListener(java.awt.dnd.DragSourceMotionListener), getDragSourceMotionListeners()

removeDragSourceMotionListener

public void removeDragSourceMotionListener(DragSourceMotionListener dsml)

Удаляет указанного DragSourceMotionListener из этого DragSource. Если задан слушатель null , никакие действия не выполняются и исключение не выбрасывается. Если слушатель, указанный в аргументе, ранее не был добавлен к этому DragSource, никакие действия не выполняются и исключение не выбрасывается.

Параметры:
dsml - DragSourceMotionListener для удаления
Since:
1.4
См. также:
addDragSourceMotionListener(java.awt.dnd.DragSourceMotionListener), getDragSourceMotionListeners()

getDragSourceMotionListeners

public DragSourceMotionListener[] getDragSourceMotionListeners()

Возвращает всех DragSourceMotionListener , зарегистрированных с этим DragSource.

Возвращает:
все DragSource этого DragSource или пустой массив, если такие слушатели не зарегистрированы
Since:
1.4
См. также:
addDragSourceMotionListener(java.awt.dnd.DragSourceMotionListener), removeDragSourceMotionListener(java.awt.dnd.DragSourceMotionListener)

getListeners

public <T extends EventListener> T[] getListeners(Class<T> listenerType)

Получает все объекты, текущие зарегистрированные как FooListener в этом DragSource. FooListener регистрируются с помощью метода addFooListener.

Параметры:
listenerType - тип запрашиваемых слушателей; этот параметр должен указать интерфейс, наследуемый от java.util.EventListener
Возвращает:
массив всех объектов, зарегистрированных как FooListener в этом DragSource, или пустой массив, если такие слушатели не были добавлены
Исключение:
ClassCastException - если listenerType не указывает класс или интерфейс, реализующий java.util.EventListener
Since:
1.4
См. также:
getDragSourceListeners(), getDragSourceMotionListeners()

getDragThreshold

public static int getDragThreshold()

Возвращает порог движения жеста перетаскивания. Порог движения жеста перетаскивания определяет рекомендуемое поведение для MouseDragGestureRecognizer.

Если системная переменная awt.dnd.drag.threshold установлена в положительное целое число, этот метод возвращает значение системной переменной; в противном случае, если доступна соответствующая системная переменная для рабочего стола и поддерживается реализацией Java платформы, этот метод возвращает значение этой переменной; в противном случае этот метод возвращает некоторое значение по умолчанию. Соответствующая системная переменная для рабочего стола может быть запрошена с помощью java.awt.Toolkit.getDesktopProperty("DnD.gestureMotionThreshold").

Возвращает:
порог движения жеста перетаскивания
Since:
1.5
См. также:
MouseDragGestureRecognizer

© 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.

Spec-Zone.ru

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