Spec-Zone .ru
спецификации, руководства, описания, API
|
public class DragEvent extends InputEvent
MouseEvent
. Перетащите и отбросьте жест, может быть запущен, вызывая startDragAndDrop () внутри обработчик событий DRAG_DETECTED. Данные, которые будут переданы, чтобы отбросить цель, помещаются в a dragBoard
в этот момент.
Перетащите ввел/вышел, события ведут себя так же к мыши, ввел/вышел события, пожалуйста, см. MouseEvent
краткий обзор.
Значение по умолчанию перетаскивает перемещения мыши использования механизма обнаружения с нажатой кнопкой в комбинации с гистерезисом. Это поведение может быть увеличено приложением. Каждый MOUSE_PRESSED
и MOUSE_DRAGGED
у события есть a dragDetect
флаг, который определяет, был ли обнаружен перетащить жест. Значение по умолчанию этого флага зависит от механизма обнаружения значения по умолчанию и может быть изменено, вызывая setDragDetect()
в обработчике событий. Когда обработка одного из этих событий заканчивается dragDetect
отметьте набор к истине, a DRAG_DETECTED
MouseEvent
отправляется потенциальному источнику жеста (объект, на котором кнопка мыши была нажата). Это событие уведомляет об обнаружении жеста.
Внутри a DRAG_DETECTED
обработчик событий, если startDragAndDrop()
метод вызывают на узле или сцене, и перетащенные данные делаются доступными для возвращенного Dragboard
, объект тот, на который startDragAndDrop()
был вызван considred, источник жеста и жест перетаскивания и отбрасывания запускаются. Dragboard
имеет системную функциональность буфера обмена, но определенно используется для, перетаскивают и отбрасывают передачу данных.
startDragAndDrop()
метод берет ряд TransferMode
s поддерживаемый источником жеста. Например передача только TransferMode.COPY
указывает, что источник жеста позволяет только копировать данных, не перемещаясь или ссылаясь.
Следующий пример показывает, что простое перетаскивает и отбрасывает источник:
Rectangle rect = new Rectangle(100, 100);
rect.setOnDragDetected(new EventHandler
После того, как жест перетаскивания и отбрасывания был запущен, любой объект (Node
, Scene
) по которому перетаскивается мышь, потенциальная цель отбрасывания.
Когда мышь перетаскивается в границы потенциальной цели отбрасывания, потенциальная цель получает a DRAG_ENTERED
событие. Когда мышь перетаскивается за пределами границ потенциальной цели, это получает a DRAG_EXITED
событие. Есть также пузырение DRAG_ENTERED_TARGET
и DRAG_EXITED_TARGET
разновидности. Они ведут себя так же к мыши, ввел/вышел события, пожалуйста, см. MouseEvent
краткий обзор.
Потенциальная цель отбрасывания может решить изменить свое появление, чтобы позволить пользователю знать, что перетащенные данные могут быть отброшены на ней. Это может быть сделано в a DRAG_OVER
обработчик событий, основанный на позиции мыши. Другая опция должна изменить появление потенциальной цели в a DRAG_ENTERED
и DRAG_EXITED
обработчики.
В DRAG_OVER
обработчик событий у потенциальной цели отбрасывания есть возможность сделать известным, что это - фактическая цель. Это делается, вызывая acceptTransferModes(TransferMode...)
на событии передавая режимы передачи это готово принять. Если это не вызывают во время поставки события или если ни один из переданных режимов передачи не поддерживается источником жеста, то потенциальная цель отбрасывания, как полагают, не является фактической целью отбрасывания.
Решая погоду, чтобы принять событие, вызывая acceptTransferModes(TransferMode...)
, тип доступных данных на Dragboard
должен быть рассмотрен. Доступ к Dragboard
обеспечивается getDragboard()
метод.
Принимая событие, потенциальная цель жеста решает который TransferMode
принимается для работы. Принять решение, DragBoard.getTransferModes()
(набор режимов передачи, поддерживаемых источником жеста) и DragEvent.getTransferMode()
(режим передачи значения по умолчанию, выпущенный платформой, управляемой ключевыми модификаторами), может использоваться. Это - poosible, чтобы передать больше режимов передачи в acceptTransferModes(TransferMode...)
метод. В этом случае это принимает решение в имени приложения (это выбирает режим по умолчанию, если это поддерживается источником жеста и принимается целью жеста, иначе это выбирает наиболее распространенный режим поддерживаемых и принятых). DRAG_DROPPED
событие getTransferMode()
более поздние отчеты режим передачи, принятый DRAG_OVER
обработчик событий.
Жест перетаскивания и отбрасывания заканчивается, когда кнопка мыши отпускается. Если это происходит по цели жеста, которая приняла предыдущий DRAG_OVER
события с режимом передачи, поддерживаемым источником жеста, a DRAG_DROPPED
событие отправляется цели жеста. В его обработчике цель жеста может получить доступ к данным на dragboard. После того, как данные были переданы (или решены, чтобы не передать), жест должен быть завершен, вызывая setDropCompleted(Boolean)
на событии. Boolean
параметр указывает, были ли данные переданы успешно или нет. Если это не вызывают, жест считают неудачным.
Следующий пример показывает, что простое перетаскивает и отбрасывает цель для текстовых данных:
Rectangle rect = new Rectangle(100, 100);
rect.setOnDragOver(new EventHandler
После того, как жест был закончен, ли успешной или неудачной передачей данных или быть отмененным, DRAG_DONE
событие отправляется источнику жеста. getTransferMode()
метод события указывает к источнику жеста, как передача данных была завершена. Если у режима передачи есть значение MOVE
, тогда это позволяет источнику убирать свои данные. Очистка данных источника дает соответствующее появление пользователю, что данные были перемещены жестом перетаскивания и отбрасывания. Если у этого есть значение null
, тогда жест перетаскивания и отбрасывания, законченный без любых передаваемых данных. Это могло произойти в результате события выпуска мыши по узлу, который не является целью отбрасывания, или пользователем, нажимающим клавишу ESC, чтобы отменить жест перетаскивания и отбрасывания, или целью жеста создание отчетов о неудачной передаче данных.
Модификатор и Тип | Поле и Описание |
---|---|
static EventType<DragEvent> |
ЛЮБОЙ
Общий супертип для всех перетаскивает типы события.
|
static EventType<DragEvent> |
DRAG_DONE
Это событие имеет место на источнике жеста перетаскивать-и-отбрасывать после того, как его данные были отброшены на цели отбрасывания.
|
static EventType<DragEvent> |
DRAG_DROPPED
Это событие имеет место, когда кнопка мыши отпускается во время, перетаскивают и отбрасывают жест на цели отбрасывания.
|
static EventType<DragEvent> |
DRAG_ENTERED
Это событие имеет место, когда перетаскивают жест, вводит узел.
|
static EventType<DragEvent> |
DRAG_ENTERED_TARGET
Это событие имеет место, когда перетаскивают жест, вводит узел.
|
static EventType<DragEvent> |
DRAG_EXITED
Это событие имеет место, когда перетаскивают выходы жеста узел.
|
static EventType<DragEvent> |
DRAG_EXITED_TARGET
Это событие имеет место, когда перетаскивают жест exitenters узел.
|
static EventType<DragEvent> |
DRAG_OVER
Это событие имеет место, когда перетаскивают продвижения жеста в пределах этого узла.
|
consumed, eventType, NULL_SOURCE_TARGET, target
Модификатор и Тип | Метод и Описание |
---|---|
void |
acceptTransferModes(TransferMode... transferModes)
Принимает это
DragEvent , выбор режима передачи для работы отбрасывания. |
Событие |
copyFor(java.lang.Object newSource, EventTarget newTarget)
Создает и возвращает копию этого события с указанным источником события и целью.
|
TransferMode |
getAcceptedTransferMode()
Получает режим передачи, принятый потенциальной целью.
|
Dragboard |
getDragboard()
dragboard, который доступен, чтобы передать данные.
|
java.lang.Object |
getGestureSource()
Исходный объект жеста перетаскивания и отбрасывания.
|
java.lang.Object |
getGestureTarget()
Целевой объект жеста перетаскивания и отбрасывания.
|
double |
getSceneX()
Горизонтальная позиция возвратов события относительно источника
Scene это содержит источник DragEvent. |
double |
getSceneY()
Вертикальная позиция возвратов события относительно источника
Scene это содержит источник DragEvent. |
double |
getScreenX()
Возвраты абсолютная горизонтальная позиция события.
|
double |
getScreenY()
Возвраты абсолютная вертикальная позиция события.
|
TransferMode |
getTransferMode()
Режим передачи данных.
|
double |
getX()
Горизонтальная позиция события относительно источника источника DragEvent.
|
double |
getY()
Вертикальная позиция события относительно источника источника DragEvent.
|
boolean |
isAccepted()
Указывает, было ли это событие принято.
|
boolean |
isDropCompleted()
Ли
setDropCompleted(true) был вызван на этом событии. |
void |
setDropCompleted(boolean isTransferDone)
Указывает что обработка передачи этого
DragEvent был завершен успешно во время a DRAG_DROPPED обработчик событий. |
clone, consume, fireEvent, getEventType, getTarget, isConsumed
public static final EventType<DragEvent> ANY
public static final EventType<DragEvent> DRAG_ENTERED_TARGET
DRAG_ENTERED
обработчик событий должен использоваться.public static final EventType<DragEvent> DRAG_ENTERED
DRAG_ENTERED_TARGET
.public static final EventType<DragEvent> DRAG_EXITED_TARGET
DRAG_EXITED
обработчик событий должен использоваться.public static final EventType<DragEvent> DRAG_EXITED
DRAG_EXITED_TARGET
.public static final EventType<DragEvent> DRAG_OVER
public static final EventType<DragEvent> DRAG_DONE
transferMode
из шоу события, что только произошло в цели отбрасывания. Если transferMode
имеет значение MOVE
, тогда источник может убрать свои данные. Очистка данных источника дает соответствующее появление пользователю, что данные были перемещены жестом перетаскивания и отбрасывания. A transferMode
у этого есть значение NONE
указывает, что никакие данные не были переданы во время жеста перетаскивания и отбрасывания.public Event copyFor(java.lang.Object newSource, EventTarget newTarget)
Event
null
, это заменяется NULL_SOURCE_TARGET
значение.public final double getX()
public final double getY()
public final double getScreenX()
public final double getScreenY()
public final double getSceneX()
Scene
это содержит источник DragEvent. Если узел не находится в a Scene
, тогда значение относительно boundsInParent корневого больше всего родителя узла DragEvent.Scene
это содержит источник DragEventpublic final double getSceneY()
Scene
это содержит источник DragEvent. Если узел не находится в a Scene
, тогда значение относительно boundsInParent корневого больше всего родителя узла DragEvent.Scene
это содержит источник DragEventpublic final java.lang.Object getGestureSource()
null
допустимо в случае, что жест прибывает из другого приложения.public final java.lang.Object getGestureTarget()
null
допустимо в случае, что жест перетаскивания и отбрасывания был отменен или завершен без передачи, имеющей место или нет в настоящий момент никакой цели события принятия перетащить событий.public final TransferMode getTransferMode()
public final boolean isAccepted()
public final TransferMode getAcceptedTransferMode()
public final Dragboard getDragboard()
DRAG_DETECTED
событие от нажатия мыши. Данные могут быть скопированы с этого dragboard в обработчике DRAG_DROPPED
событие.public void acceptTransferModes(TransferMode... transferModes)
DragEvent
, выбор режима передачи для работы отбрасывания. Используемый, чтобы указать, что потенциальная цель отбрасывания, которая получает это событие, является целью отбрасывания от DRAG_OVER
обработчик событий. Это принимает один из режимов передачи, которые и передают в этот метод и поддерживаются источником жеста. Это принимает режим передачи значения по умолчанию если возможный, иначе наиболее распространенный из приемлемых режимов.
public void setDropCompleted(boolean isTransferDone)
DragEvent
был завершен успешно во время a DRAG_DROPPED
обработчик событий. Нет dragboard
доступ может произойти после этого вызова.isTransferDone
- true
указывает, что передача была успешна.java.lang.IllegalStateException
- если это не событие DRAG_DROPPEDpublic boolean isDropCompleted()
setDropCompleted(true)
был вызван на этом событии.setDropCompleted(true)
был вызванCopyright (c) 2008, 2011, Oracle и/или его филиалы. Все права защищены. Использование подвергается