The MouseWheelEvent in java programming

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 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 invalid id results in unspecified behavior.

source - the Component that originated the event



when - a long that gives the time the event occurred
modifiers - the modifier keys down during event (shift, ctrl, alt, meta)
x - the horizontal x coordinate for the mouse location
y - the vertical y coordinate for the mouse location
clickCount - the number of mouse clicks associated with event
popupTrigger - a boolean, true if this event is a trigger for a popup-menu
scrollType - 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 scrolled
wheelRotation - 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);
      }
  }
 

0 comments:

Post a Comment

 

learn java programming Copyright © 2011-2012 | Powered by appsackel.org