Spec-Zone.ru › OpenJDK 21

Класс MouseWheelEvent

java.lang.Object
java.util.EventObject
java.awt.AWTEvent
java.awt.event.ComponentEvent
java.awt.event.InputEvent
java.awt.event.MouseEvent
java.awt.event.MouseWheelEvent
Все реализованные интерфейсы:
Serializable
public class MouseWheelEvent extends MouseEvent
Событие, указывающее на то, что колесо мыши было повернуто в компоненте.

Мышь с колесом — это мышь, у которой колесо расположено вместо средней кнопки. Это колесо можно вращать к себе или от себя. Колесо мыши чаще всего используется для прокрутки, хотя возможны и другие применения.

Объект MouseWheelEvent передаётся каждому MouseWheelListener объекту, который зарегистрирован для получения "интересных" событий мыши с помощью метода компонента addMouseWheelListener. Каждый такой объект-слушатель получает MouseEvent, содержащий событие мыши.

Из-за особой связи колеса мыши с прокручиваемыми компонентами, MouseWheelEvents доставляются несколько иначе, чем другие MouseEvents. Это связано с тем, что, в то время как другие MouseEvents обычно влияют на изменение непосредственно в компоненте, расположенном под курсором мыши (например, при нажатии кнопки), MouseWheelEvents часто оказывают влияние вдали от курсора мыши (перемещение колеса над компонентом внутри ScrollPane должно прокручивать одну из полос прокрутки на ScrollPane).

Доставка MouseWheelEvents начинается с компонента под курсором мыши. Если MouseWheelEvents не включены в компоненте, событие доставляется первому предку Container, у которого MouseWheelEvents включены. Обычно это ScrollPane с включенной прокруткой с помощью колеса. Компонент-источник и координаты x, y будут относиться к конечному пункту назначения события (ScrollPane). Это позволяет устанавливать сложный интерфейс без модификаций в ScrollPane, а все MouseWheelEvents будут доставляться в ScrollPane для прокрутки.

Некоторые компоненты AWT реализованы с использованием нативных виджетов, которые отображают свои полосы прокрутки и обрабатывают свою прокрутку. Конкретные компоненты, для которых это верно, будут различаться в зависимости от платформы. Когда колесо мыши перемещается над одним из этих компонентов, событие передаётся напрямую в нативный виджет, а не распространяется к предкам.

Платформы позволяют настраивать количество прокрутки, которое должно выполняться при перемещении колеса мыши. Две наиболее распространённые настройки — прокрутка на определённое количество "единиц" (обычно строк текста в текстовом компоненте) или целого "блока" (аналогично клавишам Page Up/Page Down). MouseWheelEvent предлагает методы для соответствия настройкам базовой платформы. Эти настройки платформы могут быть изменены пользователем в любое время. MouseWheelEvents отражают последние настройки.

Класс MouseWheelEvent включает методы для получения количества "щелчков" поворота колеса мыши. Метод getWheelRotation() возвращает целое число "щелчков", соответствующее количеству щелчков, на которое было повернуто колесо. Кроме этого метода, класс MouseWheelEvent предоставляет метод getPreciseWheelRotation(), который возвращает двойное число "щелчков" в случае частичного поворота. Метод getPreciseWheelRotation() полезен, если мышь поддерживает колесо с высокой точностью, например, свободно вращающееся колесо без насечек. Приложения могут извлечь выгоду, используя этот метод для обработки событий колеса мыши более точно, что делает визуальное восприятие плавнее.

С момента:
1.4
См. также:
  • MouseWheelListener
  • ScrollPane
  • ScrollPane.setWheelScrollingEnabled(boolean)
  • JScrollPane
  • JScrollPane.setWheelScrollingEnabled(boolean)
  • Сериализованная форма

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

Модификатор и тип Поле Описание
static final int WHEEL_BLOCK_SCROLL
Константа, представляющая прокрутку на "блок" (как прокрутка с клавишами Page Up, Page Down)
static final int WHEEL_UNIT_SCROLL
Константа, представляющая прокрутку на "единицы" (как прокрутка с клавишами со стрелками)

Поля, объявленные в классе java.awt.event.MouseEvent

BUTTON1, BUTTON2, BUTTON3, MOUSE_CLICKED, MOUSE_DRAGGED, MOUSE_ENTERED, MOUSE_EXITED, MOUSE_FIRST, MOUSE_LAST, MOUSE_MOVED, MOUSE_PRESSED, MOUSE_RELEASED, MOUSE_WHEEL, NOBUTTON

Поля, объявленные в классе java.awt.event.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

Поля, объявленные в классе java.awt.event.ComponentEvent

COMPONENT_FIRST, COMPONENT_HIDDEN, COMPONENT_LAST, COMPONENT_MOVED, COMPONENT_RESIZED, COMPONENT_SHOWN

Поля, объявленные в классе java.awt.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

Поля, объявленные в классе java.util.EventObject

source

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

Конструктор Описание
MouseWheelEvent(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger, int scrollType, int scrollAmount, int wheelRotation)
Создаёт объект MouseWheelEvent со специфицированным компонентом-источником, типом, модификаторами, координатами, типом прокрутки, количеством прокрутки и поворотом колеса.
MouseWheelEvent(Component source, int id, long when, int modifiers, int x, int y, int xAbs, int yAbs, int clickCount, boolean popupTrigger, int scrollType, int scrollAmount, int wheelRotation)
Создаёт объект MouseWheelEvent со специфицированным компонентом-источником, типом, модификаторами, координатами, абсолютными координатами, типом прокрутки, количеством прокрутки и поворотом колеса.
MouseWheelEvent(Component source, int id, long when, int modifiers, int x, int y, int xAbs, int yAbs, int clickCount, boolean popupTrigger, int scrollType, int scrollAmount, int wheelRotation, double preciseWheelRotation)
Создаёт объект MouseWheelEvent со специфицированным компонентом-источником, типом, модификаторами, координатами, абсолютными координатами, типом прокрутки, количеством прокрутки и поворотом колеса.

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

Модификатор и тип Метод Описание
double getPreciseWheelRotation()
Возвращает количество "щелчков" поворота колеса мыши, как число с плавающей точкой.
int getScrollAmount()
Возвращает количество единиц, которые должны быть прокручены за один щелчок вращения колеса мыши.
int getScrollType()
Возвращает тип прокрутки, который должен быть выполнен в ответ на это событие.
int getUnitsToScroll()
Это удобный метод для помощи в реализации общего случая MouseWheelListener — прокрутка ScrollPane или JScrollPane на величину, соответствующую настройкам платформы.
int getWheelRotation()
Возвращает количество "щелчков" поворота колеса мыши, как целое число.
String paramString()
Возвращает строку-параметр, идентифицирующую это событие.

Методы, объявленные в классе java.awt.event.MouseEvent

getButton, getClickCount, getLocationOnScreen, getMouseModifiersText, getPoint, getX, getXOnScreen, getY, getYOnScreen, isPopupTrigger, translatePoint

Методы, объявленные в классе java.awt.event.InputEvent

consume, getMaskForButton, getModifiers, getModifiersEx, getModifiersExText, getWhen, isAltDown, isAltGraphDown, isConsumed, isControlDown, isMetaDown, isShiftDown

Методы, объявленные в классе java.awt.event.ComponentEvent

getComponent

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

getID, setSource, toString

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

getSource

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

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

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

WHEEL_UNIT_SCROLL

@Native public static final int WHEEL_UNIT_SCROLL
Константа, представляющая прокрутку на "единицы" (например, прокрутка со стрелками)
См. также:
  • getScrollType()
  • Значения констант полей

WHEEL_BLOCK_SCROLL

@Native public static final int WHEEL_BLOCK_SCROLL
Константа, представляющая прокрутку на "блок" (например, прокрутка со стрелками "Вверх страницы" и "Вниз страницы")
См. также:
  • getScrollType()
  • Значения констант полей

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

MouseWheelEvent

public MouseWheelEvent(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger, int scrollType, int scrollAmount, int wheelRotation)
Конструирует объект MouseWheelEvent со указанным исходным компонентом, типом, модификаторами, координатами, типом прокрутки, количеством прокрутки и вращением колесика мыши.

Абсолютные координаты xAbs и yAbs устанавливаются по местоположению источника на экране плюс относительные координаты x и y. xAbs и yAbs устанавливаются в ноль, если источник не отображается.

Обратите внимание, что передача недопустимого id приводит к неопределенному поведению. Этот метод выбрасывает IllegalArgumentException, если source равно null.

Параметры:
source - компонент, который породил событие
id - целое число, идентифицирующее событие
when - значение типа long, указывающее время наступления события
modifiers - клавиши модификаторов, нажатые во время события (Shift, Ctrl, Alt, Meta)
x - горизонтальная координата x для положения указателя мыши
y - вертикальная координата y для положения указателя мыши
clickCount - количество щелчков мыши, связанных с событием
popupTrigger - логическое значение, true, если это событие является триггером для всплывающего меню
scrollType - тип прокрутки, который должен произойти в ответ на это событие; допустимые значения — WHEEL_UNIT_SCROLL и WHEEL_BLOCK_SCROLL
scrollAmount - для scrollType WHEEL_UNIT_SCROLL, количество единиц для прокрутки
wheelRotation - целое число, обозначающее количество "щелчков" вращения колеса мыши
Исключения:
IllegalArgumentException - если source равно null
См. также:
  • MouseEvent(java.awt.Component, int, long, int, int, int, int, boolean)
  • MouseEvent(java.awt.Component, int, long, int, int, int, int, int, int, boolean, int)

MouseWheelEvent

public MouseWheelEvent(Component source, int id, long when, int modifiers, int x, int y, int xAbs, int yAbs, int clickCount, boolean popupTrigger, int scrollType, int scrollAmount, int wheelRotation)
Конструирует объект MouseWheelEvent со указанным исходным компонентом, типом, модификаторами, координатами, абсолютными координатами, типом прокрутки, количеством прокрутки и вращением колесика мыши.

Обратите внимание, что передача недопустимого id приводит к неопределенному поведению. Этот метод выбрасывает IllegalArgumentException, если source равно null.

Даже если несовместимые значения относительных и абсолютных координат переданы в конструктор, экземпляр MouseWheelEvent всё равно создаётся и исключение не выбрасывается.

Параметры:
source - компонент, который породил событие
id - целое число, идентифицирующее событие
when - значение типа long, указывающее время наступления события
modifiers - клавиши модификаторов, нажатые во время события (Shift, Ctrl, Alt, Meta)
x - горизонтальная координата x для положения указателя мыши
y - вертикальная координата y для положения указателя мыши
xAbs - абсолютная горизонтальная координата x для положения указателя мыши
yAbs - абсолютная вертикальная координата y для положения указателя мыши
clickCount - количество щелчков мыши, связанных с событием
popupTrigger - логическое значение, true, если это событие является триггером для всплывающего меню
scrollType - тип прокрутки, который должен произойти в ответ на это событие; допустимые значения — WHEEL_UNIT_SCROLL и WHEEL_BLOCK_SCROLL
scrollAmount - для scrollType WHEEL_UNIT_SCROLL, количество единиц для прокрутки
wheelRotation - целое число, обозначающее количество "щелчков" вращения колеса мыши
Исключения:
IllegalArgumentException - если source равно null
С:
1.6
См. также:
  • MouseEvent(java.awt.Component, int, long, int, int, int, int, boolean)
  • MouseEvent(java.awt.Component, int, long, int, int, int, int, int, int, boolean, int)

MouseWheelEvent

public MouseWheelEvent(Component source, int id, long when, int modifiers, int x, int y, int xAbs, int yAbs, int clickCount, boolean popupTrigger, int scrollType, int scrollAmount, int wheelRotation, double preciseWheelRotation)
Конструирует объект MouseWheelEvent со указанным исходным компонентом, типом, модификаторами, координатами, абсолютными координатами, типом прокрутки, количеством прокрутки и вращением колесика мыши.

Обратите внимание, что передача недопустимого id параметра приводит к неопределенному поведению. Этот метод выбрасывает IllegalArgumentException, если source равно null.

Даже если несовместимые значения для относительных и абсолютных координат переданы в конструктор, экземпляр MouseWheelEvent всё равно создаётся и исключение не выбрасывается.

Параметры:
source - компонент, который породил событие
id - целое значение, идентифицирующее событие
when - значение типа long, указывающее время наступления события
modifiers - клавиши модификаторов, нажатые во время события (Shift, Ctrl, Alt, Meta)
x - горизонтальная x координата для положения указателя мыши
y - вертикальная y координата для положения указателя мыши
xAbs - абсолютная горизонтальная x координата для положения указателя мыши
yAbs - абсолютная вертикальная y координата для положения указателя мыши
clickCount - количество щелчков мыши, связанных с событием
popupTrigger - логическое значение, true если это событие является триггером для всплывающего меню
scrollType - тип прокрутки, который должен произойти в ответ на это событие; допустимые значения — WHEEL_UNIT_SCROLL и WHEEL_BLOCK_SCROLL
scrollAmount - для scrollType WHEEL_UNIT_SCROLL, количество единиц для прокрутки
wheelRotation - целое число, обозначающее количество "щелчков" вращения колеса мыши
preciseWheelRotation - двойное число "щелчков" вращения колеса мыши
Исключения:
IllegalArgumentException - если source равно null
С:
1.7
См. также:
  • MouseEvent(java.awt.Component, int, long, int, int, int, int, boolean)
  • MouseEvent(java.awt.Component, int, long, int, int, int, int, int, int, boolean, int)

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

getScrollType

public int getScrollType()
Возвращает тип прокрутки, который должен произойти в ответ на это событие. Это определяется нативной платформой. Допустимые значения:
  • MouseWheelEvent.WHEEL_UNIT_SCROLL
  • MouseWheelEvent.WHEEL_BLOCK_SCROLL
Возвращает:
либо MouseWheelEvent.WHEEL_UNIT_SCROLL, либо MouseWheelEvent.WHEEL_BLOCK_SCROLL в зависимости от настроек нативной платформы.
См. также:
  • Adjustable.getUnitIncrement()
  • Adjustable.getBlockIncrement()
  • Scrollable.getScrollableUnitIncrement(java.awt.Rectangle, int, int)
  • Scrollable.getScrollableBlockIncrement(java.awt.Rectangle, int, int)

getScrollAmount

public int getScrollAmount()
Возвращает количество единиц, которые должны быть прокручены при каждом нажатии на колесико мыши. Действительно только если getScrollType возвращает MouseWheelEvent.WHEEL_UNIT_SCROLL
Возвращает:
количество единиц для прокрутки или неопределённое значение, если getScrollType возвращает MouseWheelEvent.WHEEL_BLOCK_SCROLL
См. также:
  • getScrollType()

getWheelRotation

public int getWheelRotation()
Возвращает количество "щелчков" вращения колеса мыши в виде целого числа. Частичное вращение может произойти, если мышь поддерживает колесо с высоким разрешением. В этом случае метод возвращает ноль, пока не будет накоплен полный "щелчок".
Возвращает:
отрицательные значения, если колесо мыши вращалось вверх/от пользователя, и положительные значения, если колесо мыши вращалось вниз/к пользователю
См. также:
  • getPreciseWheelRotation()

getPreciseWheelRotation

public double getPreciseWheelRotation()
Возвращает количество «щелчков» вращения колесика мыши в виде числа с плавающей точкой. Частичное вращение может произойти, если мышь поддерживает колесико высокой точности. В этом случае возвращаемое значение будет включать дробную часть «щелчка».
Возвращает:
отрицательные значения, если колесико мыши вращалось вверх или от пользователя, и положительные значения, если колесико мыши вращалось вниз или к пользователю
С:
1.7
См. также:
  • getWheelRotation()

getUnitsToScroll

public int getUnitsToScroll()
Это удобный метод для помощи в реализации общего случая MouseWheelListener - для прокрутки ScrollPane или JScrollPane на количество единиц, соответствующее настройкам платформы. (Обратите внимание, что ScrollPane и JScrollPane уже имеют эту функциональность.)

Этот метод возвращает количество единиц прокрутки, когда тип прокрутки MouseWheelEvent.WHEEL_UNIT_SCROLL, и должен вызываться только в том случае, если getScrollType возвращает MouseWheelEvent.WHEEL_UNIT_SCROLL.

Направление прокрутки, количество перемещения колесика и настройки платформы для прокрутки колесика учитываются. Этот метод не и не может учитывать значение приращения единицы Adjustable/Scrollable, так как оно будет различаться среди компонентов прокрутки.

Упрощенный пример того, как этот метод может быть использован в обработчике:

  mouseWheelMoved(MouseWheelEvent event) {
      ScrollPane sp = getScrollPaneFromSomewhere();
      Adjustable adj = sp.getVAdjustable()
      if (MouseWheelEvent.getScrollType() == WHEEL_UNIT_SCROLL) {
          int totalScrollAmount =
              event.getUnitsToScroll() *
              adj.getUnitIncrement();
          adj.setValue(adj.getValue() + totalScrollAmount);
      }
  }
 
Возвращает:
количество единиц прокрутки, основанное на направлении и количестве вращения колесика мыши, а также на настройках прокрутки колесика нативной платформы
См. также:
  • getScrollType()
  • getScrollAmount()
  • MouseWheelListener
  • Adjustable
  • Adjustable.getUnitIncrement()
  • Scrollable
  • Scrollable.getScrollableUnitIncrement(java.awt.Rectangle, int, int)
  • ScrollPane
  • ScrollPane.setWheelScrollingEnabled(boolean)
  • JScrollPane
  • JScrollPane.setWheelScrollingEnabled(boolean)

paramString

public String paramString()
Возвращает строку параметров, идентифицирующую данное событие. Этот метод полезен для ведения журнала событий и отладки.
Переопределяет:
paramString в классе MouseEvent
Возвращает:
строку, идентифицирующую событие и его атрибуты

© 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/event/MouseWheelEvent.html

Spec-Zone.ru

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