Module java.desktop
Package javax.swing.plaf.basic

## Class BasicScrollBarUI.TrackListener

- java.lang.Object
- - java.awt.event.MouseAdapter
  - - javax.swing.plaf.basic.BasicScrollBarUI.TrackListener

- All Implemented Interfaces:
    `MouseListener`, `MouseMotionListener`, `MouseWheelListener`, `EventListener`
  Enclosing class:
    BasicScrollBarUI

      protected class BasicScrollBarUI.TrackListener
      extends MouseAdapter
      implements MouseMotionListener

  Track mouse drags.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected int` | `currentMouseX` | Current mouse x position
    `protected int` | `currentMouseY` | Current mouse y position
    `protected int` | `offset` | The offset

  - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `TrackListener()` |

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `mouseDragged​(MouseEvent e)` | Set the models value to the position of the thumb's top of Vertical scrollbar, or the left/right of Horizontal scrollbar in left-to-right/right-to-left scrollbar relative to the origin of the track.
    `void` | `mouseExited​(MouseEvent e)` | Invoked when the mouse exits the scrollbar.
    `void` | `mousePressed​(MouseEvent e)` | If the mouse is pressed above the "thumb" component then reduce the scrollbars value by one page ("page up"), otherwise increase it by one page.

    - ### Methods declared in class java.awt.event.MouseAdapter

      `mouseMoved, mouseWheelMoved`

    - ### Methods declared in class java.lang.Object

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

    - ### Methods declared in interface java.awt.event.MouseListener

      `mouseClicked, mouseEntered, mouseReleased`

    - ### Methods declared in interface java.awt.event.MouseMotionListener

      `mouseMoved`

- - ### Field Detail

    - #### offset

          protected transient int offset

      The offset

    - #### currentMouseX

          protected transient int currentMouseX

      Current mouse x position

    - #### currentMouseY

          protected transient int currentMouseY

      Current mouse y position

  - ### Constructor Detail

    - #### TrackListener

          protected TrackListener()

  - ### Method Detail

    - #### mousePressed

          public void mousePressed​(MouseEvent e)

      If the mouse is pressed above the "thumb" component then reduce the scrollbars value by one page ("page up"), otherwise increase it by one page. If there is no thumb then page up if the mouse is in the upper half of the track.
      Specified by:
        `mousePressed` in interface `MouseListener`
      Parameters:
        `e` - the event to be processed

    - #### mouseDragged

          public void mouseDragged​(MouseEvent e)

      Set the models value to the position of the thumb's top of Vertical scrollbar, or the left/right of Horizontal scrollbar in left-to-right/right-to-left scrollbar relative to the origin of the track.
      Specified by:
        `mouseDragged` in interface `MouseMotionListener`
      Overrides:
        `mouseDragged` in class `MouseAdapter`
      Parameters:
        `e` - the event to be processed

    - #### mouseExited

          public void mouseExited​(MouseEvent e)

      Invoked when the mouse exits the scrollbar.
      Specified by:
        `mouseExited` in interface `MouseListener`
      Parameters:
        `e` - MouseEvent further describing the event
      Since:
        1.5