Класс MouseEvent
- Все реализованные интерфейсы:
Serializable
- Прямые известные подклассы:
MenuDragMouseEvent, MouseWheelEvent
public non-sealed class MouseEvent extends InputEvent
EventListener, связанного с мышью (MouseListener или MouseMotionListener), либо вызовом метода Component.enableEvents(long) с соответствующим параметром маски (AWTEvent.MOUSE_EVENT_MASK или AWTEvent.MOUSE_MOTION_EVENT_MASK). Если тип события мыши не включён для компонента, соответствующие события мыши отправляются первому предку, для которого этот тип события включён. Например, если к компоненту добавлен MouseListener или вызван enableEvents(AWTEvent.MOUSE_EVENT_MASK), то все события, определённые MouseListener, отправляются компоненту. С другой стороны, если MouseMotionListener не добавлен и enableEvents не вызван с AWTEvent.MOUSE_MOTION_EVENT_MASK, события перемещения мыши компоненту не отправляются. Вместо этого события перемещения мыши отправляются первому предку, для которого они включены.
Это низкоуровневое событие генерируется объектом компонента при:
- событиях мыши
- нажатии кнопки мыши
- отпускании кнопки мыши
- щелчке кнопкой мыши (нажатии и отпускании)
- входе курсора мыши в незакрытую часть геометрической области компонента
- выходе курсора мыши из незакрытой части геометрической области компонента
- событиях перемещения мыши
- перемещении мыши
- перетаскивании мыши
Объект MouseEvent передаётся каждому объекту MouseListener или MouseAdapter, зарегистрированному для получения представляющих интерес событий мыши с помощью метода addMouseListener компонента. (Объекты MouseAdapter реализуют интерфейс MouseListener.) Каждый такой объект-слушатель получает MouseEvent, содержащее событие мыши.
Объект MouseEvent также передаётся каждому объекту MouseMotionListener или MouseMotionAdapter, зарегистрированному для получения событий перемещения мыши с помощью метода addMouseMotionListener компонента. (Объекты MouseMotionAdapter реализуют интерфейс MouseMotionListener.) Каждый такой объект-слушатель получает MouseEvent, содержащее событие перемещения мыши.
При щелчке кнопкой мыши события генерируются и отправляются зарегистрированным слушателям MouseListener. Состояние клавиш-модификаторов можно получить с помощью методов InputEvent.getModifiers() и InputEvent.getModifiersEx(). Маска кнопки, возвращаемая методом InputEvent.getModifiers(), отражает только кнопку, состояние которой изменилось, а не текущее состояние всех кнопок. (Примечание. Из-за совпадения значений ALT_MASK/BUTTON2_MASK и META_MASK/BUTTON3_MASK это не всегда верно для событий мыши с клавишами-модификаторами.) Чтобы получить состояние всех кнопок и клавиш-модификаторов, используйте InputEvent.getModifiersEx(). Кнопка, состояние которой изменилось, возвращается методом getButton()
Например, если нажата первая кнопка мыши, события отправляются в следующем порядке:
id modifiers button
MOUSE_PRESSED: BUTTON1_MASK BUTTON1
MOUSE_RELEASED: BUTTON1_MASK BUTTON1
MOUSE_CLICKED: BUTTON1_MASK BUTTON1
При нажатии нескольких кнопок мыши каждое нажатие, отпускание и щелчок приводит к отдельному событию. Например, если пользователь нажимает кнопку 1, затем кнопку 2, а после этого отпускает их в том же порядке, генерируется следующая последовательность событий:
id modifiers button
MOUSE_PRESSED: BUTTON1_MASK BUTTON1
MOUSE_PRESSED: BUTTON2_MASK BUTTON2
MOUSE_RELEASED: BUTTON1_MASK BUTTON1
MOUSE_CLICKED: BUTTON1_MASK BUTTON1
MOUSE_RELEASED: BUTTON2_MASK BUTTON2
MOUSE_CLICKED: BUTTON2_MASK BUTTON2
Если кнопка 2 отпущена первой, сначала поступает пара MOUSE_RELEASED/MOUSE_CLICKED для BUTTON2_MASK, а затем пара для BUTTON1_MASK. Для расширения стандартного набора кнопок добавляются дополнительные кнопки мыши, представленные следующими константами: BUTTON1, BUTTON2 и BUTTON3. Для дополнительных кнопок не назначены константы BUTTONx, а их маскам кнопок не назначены константы BUTTONx_DOWN_MASK. Тем не менее в качестве номеров кнопок (идентификаторов кнопок) можно использовать порядковые номера, начиная с 4. Значения, полученные методом getMaskForButton(button), можно использовать как маски кнопок.
События MOUSE_DRAGGED доставляются объекту Component, в котором была нажата кнопка мыши, вплоть до отпускания кнопки мыши (независимо от того, находится ли указатель мыши в пределах границ Component). Из-за зависящих от платформы реализаций перетаскивания MOUSE_DRAGGED события могут не доставляться во время собственной операции перетаскивания. В многомониторной среде события перетаскивания мыши доставляются объекту Component, даже если указатель мыши находится за пределами границ GraphicsConfiguration, связанного с этим Component. Однако в этом случае сообщаемые координаты событий перетаскивания мыши могут отличаться от фактического положения мыши:
- В многомониторной среде без виртуального устройства:
сообщаемые координаты событий перетаскивания мыши ограничиваются границамиGraphicsConfiguration, связанного сComponent. - В многомониторной среде с виртуальным устройством:
сообщаемые координаты событий перетаскивания мыши ограничиваются границами виртуального устройства, связанного сComponent.
Поведение не определено, если параметр id какого-либо экземпляра MouseEvent не находится в диапазоне от MOUSE_FIRST до MOUSE_LAST-1 (значение MOUSE_WHEEL недопустимо).
- Начиная с версии:
- 1.1
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
BUTTON1 |
Обозначает кнопку мыши № 1; используется в getButton(). |
static final int |
BUTTON2 |
Обозначает кнопку мыши № 2; используется в getButton(). |
static final int |
BUTTON3 |
Обозначает кнопку мыши № 3; используется в getButton(). |
static final int |
MOUSE_CLICKED |
Событие «щелчок мышью». |
static final int |
MOUSE_DRAGGED |
Событие «перетаскивание мышью». |
static final int |
MOUSE_ENTERED |
Событие «вход указателя мыши». |
static final int |
MOUSE_EXITED |
Событие «выход указателя мыши». |
static final int |
MOUSE_FIRST |
Первый номер в диапазоне идентификаторов, используемых для событий мыши. |
static final int |
MOUSE_LAST |
Последний номер в диапазоне идентификаторов, используемых для событий мыши. |
static final int |
MOUSE_MOVED |
Событие «перемещение мыши». |
static final int |
MOUSE_PRESSED |
Событие «нажатие кнопки мыши». |
static final int |
MOUSE_RELEASED |
Событие «отпускание кнопки мыши». |
static final int |
MOUSE_WHEEL |
Событие «колесо мыши». |
static final int |
NOBUTTON |
Обозначает отсутствие нажатых кнопок мыши; используется в getButton(). |
Поля, объявленные в классе InputEvent
ALT_DOWN_MASK, ALT_GRAPH_DOWN_MASK, ALT_GRAPH_MASK, ALT_MASK, BUTTON1_DOWN_MASK, BUTTON1_MASK, BUTTON2_DOWN_MASK, BUTTON2_MASK, BUTTON3_DOWN_MASK, BUTTON3_MASK, CTRL_DOWN_MASK, CTRL_MASK, META_DOWN_MASK, META_MASK, SHIFT_DOWN_MASK, SHIFT_MASK | Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
ALT_DOWN_MASK |
Расширенная константа модификатора клавиши Alt. |
static final int |
ALT_GRAPH_DOWN_MASK |
Расширенная константа модификатора клавиши AltGraph. |
static final int |
ALT_GRAPH_MASK |
Устарело. |
static final int |
ALT_MASK |
Устарело. Рекомендуется вместо этого использовать ALT_DOWN_MASK и InputEvent.getModifiersEx() |
static final int |
BUTTON1_DOWN_MASK |
Расширенная константа модификатора кнопки мыши 1. |
static final int |
BUTTON1_MASK |
Устарело. Рекомендуется вместо этого использовать BUTTON1_DOWN_MASK и InputEvent.getModifiersEx() |
static final int |
BUTTON2_DOWN_MASK |
Расширенная константа модификатора кнопки мыши 2. |
static final int |
BUTTON2_MASK |
Устарело. Рекомендуется вместо этого использовать BUTTON2_DOWN_MASK и InputEvent.getModifiersEx(). |
static final int |
BUTTON3_DOWN_MASK |
Расширенная константа модификатора кнопки мыши 3. |
static final int |
BUTTON3_MASK |
Устарело. Рекомендуется вместо этого использовать BUTTON3_DOWN_MASK и InputEvent.getModifiersEx(). |
static final int |
CTRL_DOWN_MASK |
Расширенная константа модификатора клавиши Control. |
static final int |
CTRL_MASK |
Устарело. Рекомендуется вместо этого использовать CTRL_DOWN_MASK и InputEvent.getModifiersEx() |
static final int |
META_DOWN_MASK |
Расширенная константа модификатора клавиши Meta. |
static final int |
META_MASK |
Устарело. Рекомендуется вместо этого использовать META_DOWN_MASK и InputEvent.getModifiersEx() |
static final int |
SHIFT_DOWN_MASK |
Расширенная константа модификатора клавиши Shift. |
static final int |
SHIFT_MASK |
Устарело. Рекомендуется вместо этого использовать SHIFT_DOWN_MASK и InputEvent.getModifiersEx() |
Поля, объявленные в классе ComponentEvent
COMPONENT_FIRST, COMPONENT_HIDDEN, COMPONENT_LAST, COMPONENT_MOVED, COMPONENT_RESIZED, COMPONENT_SHOWN | Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
COMPONENT_FIRST |
Первый номер в диапазоне идентификаторов, используемых для событий компонентов. |
static final int |
COMPONENT_HIDDEN |
Это событие указывает, что компонент стал невидимым. |
static final int |
COMPONENT_LAST |
Последний номер в диапазоне идентификаторов, используемых для событий компонентов. |
static final int |
COMPONENT_MOVED |
Это событие указывает, что положение компонента изменилось. |
static final int |
COMPONENT_RESIZED |
Это событие указывает, что размер компонента изменился. |
static final int |
COMPONENT_SHOWN |
Это событие указывает, что компонент стал видимым. |
Поля, объявленные в классе AWTEvent
ACTION_EVENT_MASK, ADJUSTMENT_EVENT_MASK, COMPONENT_EVENT_MASK, consumed, CONTAINER_EVENT_MASK, FOCUS_EVENT_MASK, HIERARCHY_BOUNDS_EVENT_MASK, HIERARCHY_EVENT_MASK, id, INPUT_METHOD_EVENT_MASK, INVOCATION_EVENT_MASK, ITEM_EVENT_MASK, KEY_EVENT_MASK, MOUSE_EVENT_MASK, MOUSE_MOTION_EVENT_MASK, MOUSE_WHEEL_EVENT_MASK, PAINT_EVENT_MASK, RESERVED_ID_MAX, TEXT_EVENT_MASK, WINDOW_EVENT_MASK, WINDOW_FOCUS_EVENT_MASK, WINDOW_STATE_EVENT_MASK | Модификатор и тип | Поле | Описание |
|---|---|---|
static final long |
ACTION_EVENT_MASK |
Маска событий для выбора событий действий. |
static final long |
ADJUSTMENT_EVENT_MASK |
Маска событий для выбора событий настройки. |
static final long |
COMPONENT_EVENT_MASK |
Маска событий для выбора событий компонентов. |
protected boolean |
consumed |
Определяет, будет ли событие передано обратно нижележащему компоненту после его обработки источником: значение false означает, что событие будет передано компоненту; true — что не будет. |
static final long |
CONTAINER_EVENT_MASK |
Маска событий для выбора событий контейнеров. |
static final long |
FOCUS_EVENT_MASK |
Маска событий для выбора событий фокуса. |
static final long |
HIERARCHY_BOUNDS_EVENT_MASK |
Маска событий для выбора событий границ иерархии. |
static final long |
HIERARCHY_EVENT_MASK |
Маска событий для выбора событий иерархии. |
protected int |
id |
Идентификатор события. |
static final long |
INPUT_METHOD_EVENT_MASK |
Маска событий для выбора событий методов ввода. |
static final long |
INVOCATION_EVENT_MASK |
Маска событий для выбора событий вызова. |
static final long |
ITEM_EVENT_MASK |
Маска событий для выбора событий элементов. |
static final long |
KEY_EVENT_MASK |
Маска событий для выбора событий клавиатуры. |
static final long |
MOUSE_EVENT_MASK |
Маска событий для выбора событий мыши. |
static final long |
MOUSE_MOTION_EVENT_MASK |
Маска событий для выбора событий перемещения мыши. |
static final long |
MOUSE_WHEEL_EVENT_MASK |
Маска событий для выбора событий колеса мыши. |
static final long |
PAINT_EVENT_MASK |
Маска событий для выбора событий отрисовки. |
static final int |
RESERVED_ID_MAX |
Максимальное значение зарезервированных идентификаторов событий AWT. |
static final long |
TEXT_EVENT_MASK |
Маска событий для выбора текстовых событий. |
static final long |
WINDOW_EVENT_MASK |
Маска событий для выбора событий окон. |
static final long |
WINDOW_FOCUS_EVENT_MASK |
Маска событий для выбора событий фокуса окна. |
static final long |
WINDOW_STATE_EVENT_MASK |
Маска событий для выбора событий состояния окна. |
Поля, объявленные в классе EventObject
source | Модификатор и тип | Поле | Описание |
|---|---|---|
protected Object |
source |
Объект, на котором изначально произошло событие. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
MouseEvent |
Создает объект MouseEvent с указанными исходным компонентом, типом, модификаторами, координатами, числом щелчков и флагом popupTrigger. |
MouseEvent |
Создает объект MouseEvent с указанными исходным компонентом, типом, временем, модификаторами, координатами, числом щелчков, флагом popupTrigger и номером кнопки. |
MouseEvent |
Создает объект MouseEvent с указанными исходным компонентом, типом, временем, модификаторами, координатами, абсолютными координатами, числом щелчков, флагом popupTrigger и номером кнопки. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
getButton() |
Возвращает сведения о том, какая из кнопок мыши, если таковая есть, изменила состояние. |
int |
getClickCount() |
Возвращает число щелчков мышью, связанных с этим событием. |
Point |
getLocationOnScreen() |
Возвращает абсолютное положение события по координатам x и y. |
static String |
getMouseModifiersText |
Возвращает экземпляр String с описанием клавиш-модификаторов и кнопок мыши, нажатых во время события, например «Shift» или «Ctrl+Shift». |
Point |
getPoint() |
Возвращает положение события по координатам x и y относительно исходного компонента. |
int |
getX() |
Возвращает горизонтальную координату x события относительно исходного компонента. |
int |
getXOnScreen() |
Возвращает абсолютную горизонтальную координату x события. |
int |
getY() |
Возвращает вертикальную координату y события относительно исходного компонента. |
int |
getYOnScreen() |
Возвращает абсолютную вертикальную координату y события. |
boolean |
isPopupTrigger() |
Возвращает сведения о том, является ли это событие мыши событием вызова всплывающего меню на данной платформе. |
String |
paramString() |
Возвращает строку параметров, идентифицирующую это событие. |
void |
translatePoint |
Перемещает координаты события в новое положение, прибавляя указанные смещения x (по горизонтали) и y (по вертикали). |
Методы, объявленные в классе InputEvent
consume, getMaskForButton, getModifiers, getModifiersEx, getModifiersExText, getWhen, isAltDown, isAltGraphDown, isConsumed, isControlDown, isMetaDown, isShiftDown | Модификатор и тип | Метод | Описание |
|---|---|---|
void |
consume() |
Потребляет это событие, чтобы источник, создавший его, не обработал его стандартным способом. |
static int |
getMaskForButton |
Метод для получения маски любой существующей кнопки мыши. |
int |
getModifiers() |
Устарело. Рекомендуется вместо этого использовать расширенные клавиши-модификаторы и InputEvent.getModifiersEx() |
int |
getModifiersEx() |
Возвращает маску расширенных модификаторов для этого события. |
static String |
getModifiersExText |
Возвращает строку с описанием расширенных клавиш-модификаторов и кнопок мыши, например «Shift», «Button1» или «Ctrl+Shift». |
long |
getWhen() |
Возвращает разницу в миллисекундах между временем возникновения этого события и полуночью 1 января 1970 года по UTC. |
boolean |
isAltDown() |
Возвращает сведения о том, нажата ли клавиша-модификатор Alt во время этого события. |
boolean |
isAltGraphDown() |
Возвращает сведения о том, нажата ли клавиша-модификатор AltGraph во время этого события. |
boolean |
isConsumed() |
Возвращает сведения о том, было ли это событие потреблено. |
boolean |
isControlDown() |
Возвращает сведения о том, нажата ли клавиша-модификатор Control во время этого события. |
boolean |
isMetaDown() |
Возвращает сведения о том, нажата ли клавиша-модификатор Meta во время этого события. |
boolean |
isShiftDown() |
Возвращает сведения о том, нажата ли клавиша-модификатор Shift во время этого события. |
Методы, объявленные в классе ComponentEvent
getComponent | Модификатор и тип | Метод | Описание |
|---|---|---|
Component |
getComponent() |
Возвращает источник события. |
Методы, объявленные в классе AWTEvent
getID, setSource, toString | Модификатор и тип | Метод | Описание |
|---|---|---|
int |
getID() |
Возвращает тип события. |
void |
setSource |
Перенаправляет событие к новому источнику. |
String |
toString() |
Возвращает строковое представление этого объекта. |
Методы, объявленные в классе EventObject
getSource | Модификатор и тип | Метод | Описание |
|---|---|---|
Object |
getSource() |
Объект, на котором изначально произошло событие. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли этот объект другому объекту. |
protected void |
finalize() |
Устарело, подлежит удалению: этот элемент API может быть удален в будущей версии. Финализация устарела и может быть удалена в одном из следующих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
Подробное описание полей
MOUSE_FIRST
public static final int MOUSE_FIRST
- См. также:
MOUSE_LAST
public static final int MOUSE_LAST
- См. также:
MOUSE_CLICKED
public static final int MOUSE_CLICKED
MouseEvent возникает при нажатии и отпускании кнопки мыши.- См. также:
MOUSE_PRESSED
public static final int MOUSE_PRESSED
MouseEvent возникает при нажатии кнопки мыши.- См. также:
MOUSE_RELEASED
public static final int MOUSE_RELEASED
MouseEvent возникает при отпускании кнопки мыши.- См. также:
MOUSE_MOVED
public static final int MOUSE_MOVED
MouseEvent возникает при изменении положения мыши.- См. также:
MOUSE_ENTERED
public static final int MOUSE_ENTERED
MouseEvent возникает, когда указатель мыши входит в незакрытую часть области компонента.- См. также:
MOUSE_EXITED
public static final int MOUSE_EXITED
MouseEvent возникает, когда указатель мыши покидает незакрытую часть области компонента.- См. также:
MOUSE_DRAGGED
public static final int MOUSE_DRAGGED
MouseEvent возникает при изменении положения мыши во время нажатия кнопки мыши.- См. также:
MOUSE_WHEEL
public static final int MOUSE_WHEEL
MouseWheelEvent. Оно возникает, когда прокручивается колесо мыши.- Начиная с:
- 1.4
- См. также:
NOBUTTON
public static final int NOBUTTON
getButton().- Начиная с:
- 1.4
- См. также:
BUTTON1
public static final int BUTTON1
getButton().- Начиная с:
- 1.4
- См. также:
BUTTON2
public static final int BUTTON2
getButton().- Начиная с:
- 1.4
- См. также:
BUTTON3
public static final int BUTTON3
getButton().- Начиная с:
- 1.4
- См. также:
Подробное описание конструкторов
MouseEvent
public MouseEvent(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger, int button)
MouseEvent с указанными исходным компонентом, типом, временем, модификаторами, координатами, числом щелчков, флагом popupTrigger и номером кнопки. Создание недопустимого события (например, с использованием нескольких старых _MASK или несовпадающих значений модификаторов/кнопок) приводит к неопределенному поведению. Вызов вида MouseEvent(source, id, when, modifiers, x, y, clickCount, popupTrigger, button) ведет себя точно так же, как вызов MouseEvent(source, id, when, modifiers,
x, y, xAbs, yAbs, clickCount, popupTrigger, button), где xAbs и yAbs определяются как положение источника на экране плюс относительные координаты x и y. Значения xAbs и yAbs равны нулю, если источник не отображается. Этот метод генерирует IllegalArgumentException, если source равен null.
- Параметры:
-
source— компонентComponent, инициировавший событие -
id— целое число, указывающее тип события. Допустимые значения см. в описании классаMouseEvent -
when— целое число типа long, указывающее время возникновения события. Не рекомендуется передавать отрицательное или нулевое значение -
modifiers— маска модификаторов, описывающая клавиши-модификаторы и кнопки мыши (например, Shift, Ctrl, Alt и Meta), нажатые во время события. В качестве значения этого параметра разрешено использовать только расширенные модификаторы (описание расширенных модификаторов см. в классеInputEvent.getModifiersEx()). Не рекомендуется передавать отрицательный параметр. Нулевое значение означает, что модификаторы не передавались -
x— горизонтальная координата x положения мыши. Допускается передавать отрицательные значения -
y— вертикальная координата y положения мыши. Допускается передавать отрицательные значения -
clickCount— число щелчков мыши, связанных с событием. Не рекомендуется передавать отрицательное значение -
popupTrigger— логическое значение, равноеtrue, если это событие вызывает всплывающее меню -
button— целое число, указывающее, какая из кнопок мыши изменила свое состояние. К этому параметру применяются следующие правила:- Если поддержка дополнительных кнопок мыши
disabledв Java, объектыMouseEventразрешено создавать только со стандартными кнопками:NOBUTTON,BUTTON1,BUTTON2иBUTTON3. - Если поддержка дополнительных кнопок мыши
enabledв Java, объектыMouseEventразрешено создавать со стандартными кнопками. Если поддержка дополнительных кнопок мышиenabledв Java, то помимо стандартных кнопок объектыMouseEventможно создавать с кнопками из диапазона от 4 доMouseInfo.getNumberOfButtons(), если у мыши более трех кнопок.
- Если поддержка дополнительных кнопок мыши
- Исключения:
-
IllegalArgumentException— еслиbuttonменьше нуля -
IllegalArgumentException— еслиsourceравен null -
IllegalArgumentException— еслиbuttonбольше BUTTON3, а поддержка дополнительных кнопок мышиdisabledв Java -
IllegalArgumentException— еслиbuttonбольше значенияcurrent number of buttons, а поддержка дополнительных кнопок мышиenabledв Java -
IllegalArgumentException— если передано недопустимое значениеbutton -
IllegalArgumentException— еслиsourceравен null - Начиная с:
- 1.4
- См. также:
MouseEvent
public MouseEvent(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger)
MouseEvent с указанными исходным компонентом, типом, модификаторами, координатами, числом щелчков и флагом popupTrigger. Вызов вида MouseEvent(source, id, when, modifiers, x, y, clickCount, popupTrigger) ведет себя точно так же, как вызов MouseEvent(source, id, when, modifiers,
x, y, xAbs, yAbs, clickCount, popupTrigger, MouseEvent.NOBUTTON), где xAbs и yAbs определяются как положение источника на экране плюс относительные координаты x и y. Значения xAbs и yAbs равны нулю, если источник не отображается. Этот метод генерирует IllegalArgumentException, если source равен null.- Параметры:
-
source— компонентComponent, инициировавший событие -
id— целое число, указывающее тип события. Допустимые значения см. в описании классаMouseEvent -
when— целое число типа long, указывающее время возникновения события. Не рекомендуется передавать отрицательное или нулевое значение -
modifiers— маска модификаторов, описывающая клавиши-модификаторы и кнопки мыши (например, Shift, Ctrl, Alt и Meta), нажатые во время события. В качестве значения этого параметра разрешено использовать только расширенные модификаторы (описание расширенных модификаторов см. в классеInputEvent.getModifiersEx()). Не рекомендуется передавать отрицательный параметр. Нулевое значение означает, что модификаторы не передавались -
x— горизонтальная координата x положения мыши. Допускается передавать отрицательные значения -
y— вертикальная координата y положения мыши. Допускается передавать отрицательные значения -
clickCount— число щелчков мыши, связанных с событием. Не рекомендуется передавать отрицательное значение -
popupTrigger— логическое значение, равноеtrue, если это событие вызывает всплывающее меню - Исключения:
-
IllegalArgumentException— еслиsourceравен null - См. также:
MouseEvent
public MouseEvent(Component source, int id, long when, int modifiers, int x, int y, int xAbs, int yAbs, int clickCount, boolean popupTrigger, int button)
MouseEvent с указанными исходным компонентом, типом, временем, модификаторами, координатами, абсолютными координатами, числом щелчков, флагом popupTrigger и номером кнопки. Создание недопустимого события (например, с использованием нескольких старых _MASK или несовпадающих значений модификаторов/кнопок) приводит к неопределенному поведению. Даже если конструктору переданы несогласованные значения относительных и абсолютных координат, экземпляр события мыши все равно создается, и исключение не генерируется. Этот метод генерирует IllegalArgumentException, если source равен null.
- Параметры:
-
source— компонентComponent, инициировавший событие -
id— целое число, указывающее тип события. Допустимые значения см. в описании классаMouseEvent -
when— целое число типа long, указывающее время возникновения события. Не рекомендуется передавать отрицательное или нулевое значение -
modifiers— маска модификаторов, описывающая клавиши-модификаторы и кнопки мыши (например, Shift, Ctrl, Alt и Meta), нажатые во время события. В качестве значения этого параметра разрешено использовать только расширенные модификаторы (описание расширенных модификаторов см. в классеInputEvent.getModifiersEx()). Не рекомендуется передавать отрицательный параметр. Нулевое значение означает, что модификаторы не передавались -
x— горизонтальная координата x положения мыши. Допускается передавать отрицательные значения -
y— вертикальная координата y положения мыши. Допускается передавать отрицательные значения -
xAbs— абсолютная горизонтальная координата x положения мыши. Допускается передавать отрицательные значения -
yAbs— абсолютная вертикальная координата y положения мыши. Допускается передавать отрицательные значения -
clickCount— число щелчков мыши, связанных с событием. Не рекомендуется передавать отрицательное значение -
popupTrigger— логическое значение, равноеtrue, если это событие вызывает всплывающее меню -
button— целое число, указывающее, какая из кнопок мыши изменила свое состояние. К этому параметру применяются следующие правила:- Если поддержка дополнительных кнопок мыши
disabledв Java, объектыMouseEventразрешено создавать только со стандартными кнопками:NOBUTTON,BUTTON1,BUTTON2иBUTTON3. - Если поддержка дополнительных кнопок мыши
enabledв Java, объектыMouseEventразрешено создавать со стандартными кнопками. Если поддержка дополнительных кнопок мышиenabledв Java, то помимо стандартных кнопок объектыMouseEventможно создавать с кнопками из диапазона от 4 доMouseInfo.getNumberOfButtons(), если у мыши более трех кнопок.
- Если поддержка дополнительных кнопок мыши
- Исключения:
-
IllegalArgumentException— еслиbuttonменьше нуля -
IllegalArgumentException— еслиsourceравен null -
IllegalArgumentException— еслиbuttonбольше BUTTON3, а поддержка дополнительных кнопок мышиdisabledв Java -
IllegalArgumentException— еслиbuttonбольше значенияcurrent number of buttons, а поддержка дополнительных кнопок мышиenabledв Java -
IllegalArgumentException— если передано недопустимое значениеbutton -
IllegalArgumentException— еслиsourceравен null - Начиная с:
- 1.6
- См. также:
Подробное описание методов
getLocationOnScreen
public Point getLocationOnScreen()
- Возвращает:
- объект
Point, содержащий абсолютные координаты x и y. - Начиная с:
- 1.6
- См. также:
getXOnScreen
public int getXOnScreen()
- Возвращает:
- x — целое число, указывающее абсолютную горизонтальную координату.
- Начиная с:
- 1.6
- См. также:
getYOnScreen
public int getYOnScreen()
- Возвращает:
- y — целое число, указывающее абсолютную вертикальную координату.
- Начиная с:
- 1.6
- См. также:
getX
public int getX()
- Возвращает:
- x — целое число, указывающее горизонтальную координату относительно компонента
getY
public int getY()
- Возвращает:
- y — целое число, указывающее вертикальную координату относительно компонента
getPoint
public Point getPoint()
- Возвращает:
- объект
Point, содержащий координаты x и y относительно исходного компонента
translatePoint
public void translatePoint(int x, int y)
x (по горизонтали) и y (по вертикали).- Параметры:
-
x— горизонтальное значение x, добавляемое к текущей координате x -
y— вертикальное значение y, добавляемое к текущей координате y
getClickCount
public int getClickCount()
- Возвращает:
- целочисленное значение, указывающее число щелчков
getButton
public int getButton()
MouseInfo.getNumberOfButtons(). Возвращаемое значение включает как минимум следующие константы: -
NOBUTTON -
BUTTON1 -
BUTTON2 -
BUTTON3
if (anEvent.getButton() == MouseEvent.BUTTON1) {
В частности, для мыши с одной, двумя или тремя кнопками этот метод может возвращать следующие значения: - 0 (
NOBUTTON) - 1 (
BUTTON1) - 2 (
BUTTON2) - 3 (
BUTTON3)
BUTTON3, нет идентификаторов констант. Поэтому, если установлена мышь с пятью кнопками, этот метод может возвращать следующие значения: - 0 (
NOBUTTON) - 1 (
BUTTON1) - 2 (
BUTTON2) - 3 (
BUTTON3) - 4
- 5
Примечание. Если поддержка дополнительных кнопок мыши disabled в Java, подсистема событий AWT не генерирует события мыши для дополнительных кнопок. Поэтому данный метод не должен возвращать ничего, кроме NOBUTTON, BUTTON1, BUTTON2, BUTTON3.
- Возвращает:
- одно из значений от 0 до
MouseInfo.getNumberOfButtons(), если поддержка дополнительных кнопок мышиenabledв Java. Этот диапазон включаетNOBUTTON,BUTTON1,BUTTON2,BUTTON3;
NOBUTTON,BUTTON1,BUTTON2илиBUTTON3, если поддержка дополнительных кнопок мышиdisabledв Java - Начиная с:
- 1.4
- См. также:
isPopupTrigger
public boolean isPopupTrigger()
Примечание: В разных системах всплывающие меню вызываются по-разному. Поэтому для обеспечения корректной работы на разных платформах следует проверять isPopupTrigger как при mousePressed, так и при mouseReleased.
- Возвращает:
- логическое значение true, если это событие вызывает всплывающее меню на данной платформе
getMouseModifiersText
public static String getMouseModifiersText(int modifiers)
String с описанием клавиш-модификаторов и кнопок мыши, нажатых во время события, например «Shift» или «Ctrl+Shift». Эти строки можно локализовать, изменив файл awt.properties. Обратите внимание, что InputEvent.ALT_MASK и InputEvent.BUTTON2_MASK имеют одинаковые значения, поэтому для обоих модификаторов возвращается строка «Alt». Аналогично, InputEvent.META_MASK и InputEvent.BUTTON3_MASK имеют одинаковые значения, поэтому для обоих модификаторов возвращается строка «Meta».
Обратите внимание, что передача отрицательного параметра некорректна и приведет к возврату неопределенной строки. Нулевой параметр означает, что модификаторы не передавались, и приведет к возврату пустой строки.
- Параметры:
-
modifiers— маска модификаторов, описывающая клавиши-модификаторы и кнопки мыши, нажатые во время события - Возвращает:
- строка с текстовым описанием сочетания клавиш-модификаторов и кнопок мыши, нажатых во время события
- Начиная с:
- 1.4
- См. также:
paramString
public String paramString()
- Переопределяет:
-
paramStringв классеComponentEvent - Возвращает:
- строку, идентифицирующую событие и его атрибуты
© 1993, 2025, 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.
InputEvent.getModifiersEx()