An event which indicates that the mouse wheel was rotated in a component.
A wheel mouse is a mouse which has a wheel in place of the middle button. This wheel can be rotated towards or away from the user. Mouse wheels are most often used for scrolling, though other uses are possible.
A MouseWheelEvent object is passed to every
A wheel mouse is a mouse which has a wheel in place of the middle button. This wheel can be rotated towards or away from the user. Mouse wheels are most often used for scrolling, though other uses are possible.
A MouseWheelEvent object is passed to every
MouseWheelListener
object which registered to receive the "interesting" mouse events using the
component's addMouseWheelListener
method. Each such listener
object gets a MouseEvent
containing the mouse event.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)
- Constructs a
MouseWheelEvent
object with the specified source component, type, modifiers, coordinates, scroll type, scroll amount, and wheel rotation. Note that passing in an invalidid
results in unspecified behavior.
source
- the Component
that originated
the eventwhen
- a long that gives the time the event occurredmodifiers
- the modifier keys down during event
(shift, ctrl, alt, meta)x
- the horizontal x coordinate for the mouse locationy
- the vertical y coordinate for the mouse locationclickCount
- the number of mouse clicks associated with eventpopupTrigger
- a boolean, true if this event is a trigger for a
popup-menuscrollType
- the type of scrolling which should take place in
response to this event; valid values are
WHEEL_UNIT_SCROLL
and
WHEEL_BLOCK_SCROLL
scrollAmount
- for scrollType WHEEL_UNIT_SCROLL
,
the number of units to be scrolledwheelRotation
- the amount that the mouse wheel was rotated (the
number of "clicks")getScrollType
public int getScrollType()
Returns the type of scrolling that should take place in response to this event. This is determined by the native platform. Legal values are:
- MouseWheelEvent.WHEEL_UNIT_SCROLL
- MouseWheelEvent.WHEEL_BLOCK_SCROLL
getScrollAmount
public int getScrollAmount()
Returns the number of units that should be scrolled in response to this event. Only valid if
getScrollType
returns
MouseWheelEvent.WHEEL_UNIT_SCROLL
getWheelRotation
public int getWheelRotation()
- Returns the number of "clicks" the mouse wheel was rotated.
-
- Returns:
- negative values if the mouse wheel was rotated up/away from the user, and positive values if the mouse wheel was rotated down/ towards the user
getUnitsToScroll
public int getUnitsToScroll()This is a convenience method to aid in the implementation of the common-case MouseWheelListener - to scroll a ScrollPane or JScrollPane by an amount which conforms to the platform settings. (Note, however, that
ScrollPane
and
JScrollPane
already have this functionality built in.)
This method returns the number of units to scroll when scroll type is
MouseWheelEvent.WHEEL_UNIT_SCROLL, and should only be called if
getScrollType
returns MouseWheelEvent.WHEEL_UNIT_SCROLL.
Direction of scroll, amount of wheel movement, and platform settings for wheel scrolling are all accounted for. This method does not and cannot take into account value of the Adjustable/Scrollable unit increment, as this will vary among scrolling components.
A simplified example of how this method might be used in a listener:
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); } }