Spec-Zone.ru › OpenJDK 17

Класс 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 не включены в компоненте, событие доставляется первому контейнеру-предка с включёнными 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
Постоянная, представляющая прокрутку на "блок" (например, прокрутку клавишами Page Up, Page Down)
См. также:
  • 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()
Возвращает количество "щелчков" прокрутки колеса мыши в виде двойного значения. Частичное вращение может произойти, если мышь поддерживает колесо высокой точности. В этом случае возвращаемое значение будет включать дробный "щелчок".
Возвращает:
отрицательные значения, если колесо мыши вращалось вверх или от пользователя, и положительные значения, если колесо мыши вращалось вниз или к пользователю
Since:
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()
Возвращает строку параметров, идентифицирующую это событие. Этот метод полезен для ведения журнала событий и для отладки.
Overrides:
paramString в классе MouseEvent
Возвращает:
строку, идентифицирующую событие и его атрибуты

© 1993, 2021, 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/17/docs/api/java.desktop/java/awt/event/MouseWheelEvent.html

Spec-Zone.ru

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