Spec-Zone.ru › OpenJDK 24

Класс 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 передается каждому объекту, который зарегистрирован для получения "интересных" событий мыши с помощью метода компонента addMouseWheelListener. Каждый такой объект-слушатель получает объект, содержащий событие мыши.

Из-за особой связи колеса мыши с компонентами прокрутки, 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()
Возвращает количество "нажатий" вращения колеса мыши, как double.
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 - значение времени возникновения события
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 - значение времени возникновения события
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 - значение времени возникновения события
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, 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.desktop/java/awt/event/MouseWheelEvent.html

Spec-Zone.ru

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