EventListener to the component
(MouseListener or MouseMotionListener), or by invoking
Component#enableEvents(long) with the appropriate mask parameter
(AWTEvent.MOUSE_EVENT_MASK or AWTEvent.MOUSE_MOTION_EVENT_MASK).
If the mouse event type has not been enabled on the component, the
corresponding mouse events are dispatched to the first ancestor that
has enabled the mouse event type.
For example, if a MouseListener has been added to a component, or
enableEvents(AWTEvent.MOUSE_EVENT_MASK) has been invoked, then all
the events defined by MouseListener are dispatched to the component.
On the other hand, if a MouseMotionListener has not been added and
enableEvents has not been invoked with
AWTEvent.MOUSE_MOTION_EVENT_MASK, then mouse motion events are not
dispatched to the component. Instead the mouse motion events are
dispatched to the first ancestors that has enabled mouse motion
events.
This low-level event is generated by a component object for:
A MouseEvent object is passed to every
MouseListener
or MouseAdapter object which is registered to receive
the "interesting" mouse events using the component's
addMouseListener method.
(MouseAdapter objects implement the
MouseListener interface.) Each such listener object
gets a MouseEvent containing the mouse event.
A MouseEvent object is also passed to every
MouseMotionListener or
MouseMotionAdapter object which is registered to receive
mouse motion events using the component's
addMouseMotionListener
method. (MouseMotionAdapter objects implement the
MouseMotionListener interface.) Each such listener object
gets a MouseEvent containing the mouse motion event.
When a mouse button is clicked, events are generated and sent to the
registered MouseListeners.
The state of modal keys can be retrieved using InputEvent#getModifiers
and InputEvent#getModifiersEx.
The button mask returned by InputEvent#getModifiers reflects
only the button that changed state, not the current state of all buttons.
(Note: Due to overlap in the values of ALT_MASK/BUTTON2_MASK and
META_MASK/BUTTON3_MASK, this is not always true for mouse events involving
modifier keys).
To get the state of all buttons and modifier keys, use
InputEvent#getModifiersEx.
The button which has changed state is returned by MouseEvent#getButton
For example, if the first mouse button is pressed, events are sent in the following order:
id modifiers buttonMOUSE_PRESSED: BUTTON1_MASK BUTTON1
MOUSE_RELEASED: BUTTON1_MASK BUTTON1
MOUSE_CLICKED: BUTTON1_MASK BUTTON1
When multiple mouse buttons are pressed, each press, release, and click
results in a separate event.
For example, if the user presses button 1 followed by button 2, and then releases them in the same order, the following sequence of events is generated:
id modifiers buttonMOUSE_PRESSED: BUTTON1_MASK BUTTON1
MOUSE_PRESSED: BUTTON2_MASK BUTTON2
MOUSE_RELEASED: BUTTON1_MASK BUTTON1
MOUSE_CLICKED: BUTTON1_MASK BUTTON1
MOUSE_RELEASED: BUTTON2_MASK BUTTON2
MOUSE_CLICKED: BUTTON2_MASK BUTTON2
If button 2 is released first, the
MOUSE_RELEASED/MOUSE_CLICKED pair
for BUTTON2_MASK arrives first,
followed by the pair for BUTTON1_MASK.
Some extra mouse buttons are added to extend the standard set of buttons
represented by the following constants:BUTTON1, BUTTON2, and BUTTON3.
Extra buttons have no assigned BUTTONx
constants as well as their button masks have no assigned BUTTONx_DOWN_MASK
constants. Nevertheless, ordinal numbers starting from 4 may be
used as button numbers (button ids). Values obtained by the
getMaskForButton(button) method may be used
as button masks.
MOUSE_DRAGGED events are delivered to the Component
in which the mouse button was pressed until the mouse button is released
(regardless of whether the mouse position is within the bounds of the
Component). Due to platform-dependent Drag&Drop implementations,
MOUSE_DRAGGED events may not be delivered during a native
Drag&Drop operation.
In a multi-screen environment mouse drag events are delivered to the
Component even if the mouse position is outside the bounds of the
GraphicsConfiguration associated with that
Component. However, the reported position for mouse drag events
in this case may differ from the actual mouse position:
GraphicsConfiguration associated with
the Component.
Component.
An unspecified behavior will be caused if the id parameter
of any particular MouseEvent instance is not
in the range from MOUSE_FIRST to MOUSE_LAST-1
(MOUSE_WHEEL is not acceptable).
MouseAdapter, MouseListener, MouseMotionAdapter, MouseMotionListener, MouseWheelListener, Tutorial: Writing a Mouse Listener, Tutorial: Writing a Mouse Motion Listener
| Modifier and Type | Field and Description |
|---|---|
| pack-priv int | button
Indicates which, if any, of the mouse buttons has changed state. |
| public static final int | |
| public static final int | |
| public static final int | |
| private static int | cachedNumberOfButtons
A number of buttons available on the mouse at the |
| private boolean | |
| pack-priv int | clickCount
Indicates the number of quick consecutive clicks of a mouse button. |
| public static final int | MOUSE_CLICKED
The "mouse clicked" event. |
| public static final int | MOUSE_DRAGGED
The "mouse dragged" event. |
| public static final int | MOUSE_ENTERED
The "mouse entered" event. |
| public static final int | MOUSE_EXITED
The "mouse exited" event. |
| public static final int | MOUSE_FIRST
The first number in the range of ids used for mouse events. |
| public static final int | MOUSE_LAST
The last number in the range of ids used for mouse events. |
| public static final int | MOUSE_MOVED
The "mouse moved" event. |
| public static final int | MOUSE_PRESSED
The "mouse pressed" event. |
| public static final int | MOUSE_RELEASED
The "mouse released" event. |
| public static final int | MOUSE_WHEEL
The "mouse wheel" event. |
| public static final int | |
| pack-priv boolean | popupTrigger
A property used to indicate whether a Popup Menu should appear with a certain gestures. |
| private static final long | serialVersionUID
Use serialVersionUID from JDK 1.1 for interoperability.
|
| private transient boolean | |
| pack-priv int | x
The mouse event's x coordinate. |
| private int | xAbs
The mouse event's x absolute coordinate. |
| pack-priv int | y
The mouse event's y coordinate. |
| private int | yAbs
The mouse event's y absolute coordinate. |
| Access | Constructor and Description |
|---|---|
| public | MouseEvent(Component
The source, int Component that originated the eventAn integer indicating the type of event.
For information on allowable values, see
the class description for id, long MouseEventA long integer that gives the time the event occurred.
Passing negative or zero value
is not recommended when, int a modifier mask describing the modifier keys and mouse
buttons (for example, shift, ctrl, alt, and meta) that
are down during the event.
Only extended modifiers are allowed to be used as a
value for this parameter (see the modifiers, int InputEvent#getModifiersEx
class for the description of extended modifiers).
Passing negative parameter
is not recommended.
Zero value means that no modifiers were passedThe horizontal x coordinate for the mouse location.
It is allowed to pass negative values x, int The vertical y coordinate for the mouse location.
It is allowed to pass negative values y, int The number of mouse clicks associated with event.
Passing negative value
is not recommended clickCount, boolean A boolean that equals popupTrigger, int true if this event
is a trigger for a popup menuAn integer that indicates, which of the mouse buttons has
changed its state.
The following rules are applied to this parameter:
button)
Constructs a |
| public | MouseEvent(Component
The source, int Component that originated the eventAn integer indicating the type of event.
For information on allowable values, see
the class description for id, long MouseEventA long integer that gives the time the event occurred.
Passing negative or zero value
is not recommended when, int a modifier mask describing the modifier keys and mouse
buttons (for example, shift, ctrl, alt, and meta) that
are down during the event.
Only extended modifiers are allowed to be used as a
value for this parameter (see the modifiers, int InputEvent#getModifiersEx
class for the description of extended modifiers).
Passing negative parameter
is not recommended.
Zero value means that no modifiers were passedThe horizontal x coordinate for the mouse location.
It is allowed to pass negative values x, int The vertical y coordinate for the mouse location.
It is allowed to pass negative values y, int The number of mouse clicks associated with event.
Passing negative value
is not recommended clickCount, boolean A boolean that equals popupTrigger)true if this event
is a trigger for a popup menuConstructs a |
| public | MouseEvent(Component
The source, int Component that originated the eventAn integer indicating the type of event.
For information on allowable values, see
the class description for id, long MouseEventA long integer that gives the time the event occurred.
Passing negative or zero value
is not recommended when, int a modifier mask describing the modifier keys and mouse
buttons (for example, shift, ctrl, alt, and meta) that
are down during the event.
Only extended modifiers are allowed to be used as a
value for this parameter (see the modifiers, int InputEvent#getModifiersEx
class for the description of extended modifiers).
Passing negative parameter
is not recommended.
Zero value means that no modifiers were passedThe horizontal x coordinate for the mouse location.
It is allowed to pass negative values x, int The vertical y coordinate for the mouse location.
It is allowed to pass negative values y, int The absolute horizontal x coordinate for the mouse location
It is allowed to pass negative values xAbs, int The absolute vertical y coordinate for the mouse location
It is allowed to pass negative values yAbs, int The number of mouse clicks associated with event.
Passing negative value
is not recommended clickCount, boolean A boolean that equals popupTrigger, int true if this event
is a trigger for a popup menuAn integer that indicates, which of the mouse buttons has
changed its state.
The following rules are applied to this parameter:
button)
Constructs a |
| Modifier and Type | Method and Description |
|---|---|
| public int | Returns: one of the values from 0 toMouseInfo.
if support for the extended mouse buttons is enabled by Java.
That range includes NOBUTTON, BUTTON1, BUTTON2, BUTTON3;
NOBUTTON, BUTTON1, BUTTON2 or BUTTON3
if support for the extended mouse buttons is disabled by JavaReturns which, if any, of the mouse buttons has changed state. |
| public int | Returns: integer value for the number of clicksReturns the number of mouse clicks associated with this event. |
| public Point | Returns: aPoint object containing the absolute x
and y coordinates.Returns the absolute x, y position of the event. |
| public int | getModifiersEx()
Overrides java. Returns the extended modifier mask for this event. |
| public static String | Returns: string string text description of the combination of modifier keys and mouse buttons that were down during the eventA modifier mask describing the modifier keys and
mouse buttons that were down during the event modifiers)Returns a |
| public Point | Returns: aPoint object containing the x and y coordinates
relative to the source componentReturns the x,y position of the event relative to the source component. |
| public int | Returns: x an integer indicating horizontal position relative to the componentReturns the horizontal x position of the event relative to the source component. |
| public int | Returns: x an integer indicating absolute horizontal position.Returns the absolute horizontal x position of the event. |
| public int | Returns: y an integer indicating vertical position relative to the componentReturns the vertical y position of the event relative to the source component. |
| public int | Returns: y an integer indicating absolute vertical position.Returns the absolute vertical y position of the event. |
| private static native void | initIDs()
Hides java. Initialize JNI field and method IDs for fields that may be accessed from C. |
| public boolean | Returns: boolean, true if this event is the popup menu trigger for this platformReturns whether or not this mouse event is the popup menu trigger event for the platform. |
| public String | Returns: a string identifying the event and its attributesOverrides java. Returns a parameter string identifying this event. |
| private void | |
| private void | |
| private void | |
| public synchronized void | translatePoint(int
the horizontal x value to add to the current x
coordinate position x, int the vertical y value to add to the current y
coordinate position y)Translates the event's coordinates to a new position
by adding specified |
| button | back to summary |
|---|---|
| pack-priv int button Indicates which, if any, of the mouse buttons has changed state.
The valid values are ranged from 0 to the value returned by the
Toolkit#areExtraMouseButtonsEnabled() disabled by Java
then the field may not contain the value larger than BUTTON3.
| |
| BUTTON1 | back to summary |
|---|---|
| public static final int BUTTON1 Indicates mouse button #1; used by
| |
| BUTTON2 | back to summary |
|---|---|
| public static final int BUTTON2 Indicates mouse button #2; used by
| |
| BUTTON3 | back to summary |
|---|---|
| public static final int BUTTON3 Indicates mouse button #3; used by
| |
| cachedNumberOfButtons | back to summary |
|---|---|
| private static int cachedNumberOfButtons A number of buttons available on the mouse at the | |
| causedByTouchEvent | back to summary |
|---|---|
| private boolean causedByTouchEvent | |
| clickCount | back to summary |
|---|---|
| pack-priv int clickCount Indicates the number of quick consecutive clicks of
a mouse button.
clickCount will be valid for only three mouse events :
| |
| MOUSE_CLICKED | back to summary |
|---|---|
| public static final int MOUSE_CLICKED The "mouse clicked" event. This | |
| MOUSE_DRAGGED | back to summary |
|---|---|
| public static final int MOUSE_DRAGGED The "mouse dragged" event. This | |
| MOUSE_ENTERED | back to summary |
|---|---|
| public static final int MOUSE_ENTERED The "mouse entered" event. This | |
| MOUSE_EXITED | back to summary |
|---|---|
| public static final int MOUSE_EXITED The "mouse exited" event. This | |
| MOUSE_FIRST | back to summary |
|---|---|
| public static final int MOUSE_FIRST The first number in the range of ids used for mouse events. | |
| MOUSE_LAST | back to summary |
|---|---|
| public static final int MOUSE_LAST The last number in the range of ids used for mouse events. | |
| MOUSE_MOVED | back to summary |
|---|---|
| public static final int MOUSE_MOVED The "mouse moved" event. This | |
| MOUSE_PRESSED | back to summary |
|---|---|
| public static final int MOUSE_PRESSED The "mouse pressed" event. This | |
| MOUSE_RELEASED | back to summary |
|---|---|
| public static final int MOUSE_RELEASED The "mouse released" event. This | |
| MOUSE_WHEEL | back to summary |
|---|---|
| public static final int MOUSE_WHEEL The "mouse wheel" event. This is the only
| |
| NOBUTTON | back to summary |
|---|---|
| public static final int NOBUTTON Indicates no mouse buttons; used by
| |
| popupTrigger | back to summary |
|---|---|
| pack-priv boolean popupTrigger A property used to indicate whether a Popup Menu
should appear with a certain gestures.
If
| |
| serialVersionUID | back to summary |
|---|---|
| private static final long serialVersionUID Hides java. Use serialVersionUID from JDK 1.1 for interoperability. | |
| shouldExcludeButtonFromExtModifiers | back to summary |
|---|---|
| private transient boolean shouldExcludeButtonFromExtModifiers | |
| x | back to summary |
|---|---|
| pack-priv int x The mouse event's x coordinate. The x value is relative to the component that fired the event.
| |
| xAbs | back to summary |
|---|---|
| private int xAbs The mouse event's x absolute coordinate. In a virtual device multi-screen environment in which the desktop area could span multiple physical screen devices, this coordinate is relative to the virtual coordinate system. Otherwise, this coordinate is relative to the coordinate system associated with the Component's GraphicsConfiguration. | |
| y | back to summary |
|---|---|
| pack-priv int y The mouse event's y coordinate. The y value is relative to the component that fired the event.
| |
| yAbs | back to summary |
|---|---|
| private int yAbs The mouse event's y absolute coordinate. In a virtual device multi-screen environment in which the desktop area could span multiple physical screen devices, this coordinate is relative to the virtual coordinate system. Otherwise, this coordinate is relative to the coordinate system associated with the Component's GraphicsConfiguration. | |
| MouseEvent | back to summary |
|---|---|
| public MouseEvent(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger, int button) Constructs a
Creating an invalid event (such
as by using more than one of the old _MASKs, or modifier/button
values which don't match) results in unspecified behavior.
An invocation of the form
| |
| MouseEvent | back to summary |
|---|---|
| public MouseEvent(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger) Constructs a
| |
| MouseEvent | back to summary |
|---|---|
| public MouseEvent(Component source, int id, long when, int modifiers, int x, int y, int xAbs, int yAbs, int clickCount, boolean popupTrigger, int button) Constructs a
Creating an invalid event (such
as by using more than one of the old _MASKs, or modifier/button
values which don't match) results in unspecified behavior.
Even if inconsistent values for relative and absolute coordinates are
passed to the constructor, the mouse event instance is still
created and no exception is thrown.
This method throws an
| |
| getButton | back to summary |
|---|---|
| public int getButton() Returns which, if any, of the mouse buttons has changed state.
The returned value is ranged
from 0 to the
if (anEvent.getButton() == MouseEvent.BUTTON1) {
In particular, for a mouse with one, two, or three buttons this method may return the following values:
BUTTON3 have no constant identifier.
So if a mouse with five buttons is
installed, this method may return the following values:
Note If support for extended mouse buttons is
| |
| getClickCount | back to summary |
|---|---|
| public int getClickCount() Returns the number of mouse clicks associated with this event.
| |
| getLocationOnScreen | back to summary |
|---|---|
| public Point getLocationOnScreen() Returns the absolute x, y position of the event. In a virtual device multi-screen environment in which the desktop area could span multiple physical screen devices, these coordinates are relative to the virtual coordinate system. Otherwise, these coordinates are relative to the coordinate system associated with the Component's GraphicsConfiguration.
| |
| getModifiersEx | back to summary |
|---|---|
| public int getModifiersEx() Overrides java. Doc from java. Returns the extended modifier mask for this event. Extended modifiers are the modifiers that ends with the _DOWN_MASK suffix, such as ALT_DOWN_MASK, BUTTON1_DOWN_MASK, and others. Extended modifiers represent the state of all modal keys, such as ALT, CTRL, META, and the mouse buttons just after the event occurred. For example, if the user presses button 1 followed by button 2, and then releases them in the same order, the following sequence of events is generated:
It is not recommended to compare the return value of this method
using
int onmask = SHIFT_DOWN_MASK | BUTTON1_DOWN_MASK;
int offmask = CTRL_DOWN_MASK;
if ((event.getModifiersEx() & (onmask | offmask)) == onmask) {
...
}
The above code will work even if new modifiers are added.
| |
| getMouseModifiersText | back to summary |
|---|---|
| public static String getMouseModifiersText(int modifiers) Returns a
Note that the Note that passing negative parameter is incorrect, and will cause the returning an unspecified string. Zero parameter means that no modifiers were passed and will cause the returning an empty string.
| |
| getPoint | back to summary |
|---|---|
| public Point getPoint() Returns the x,y position of the event relative to the source component.
| |
| getX | back to summary |
|---|---|
| public int getX() Returns the horizontal x position of the event relative to the source component.
| |
| getXOnScreen | back to summary |
|---|---|
| public int getXOnScreen() Returns the absolute horizontal x position of the event. In a virtual device multi-screen environment in which the desktop area could span multiple physical screen devices, this coordinate is relative to the virtual coordinate system. Otherwise, this coordinate is relative to the coordinate system associated with the Component's GraphicsConfiguration.
| |
| getY | back to summary |
|---|---|
| public int getY() Returns the vertical y position of the event relative to the source component.
| |
| getYOnScreen | back to summary |
|---|---|
| public int getYOnScreen() Returns the absolute vertical y position of the event. In a virtual device multi-screen environment in which the desktop area could span multiple physical screen devices, this coordinate is relative to the virtual coordinate system. Otherwise, this coordinate is relative to the coordinate system associated with the Component's GraphicsConfiguration.
| |
| initIDs | back to summary |
|---|---|
| private static native void initIDs() Hides java. Initialize JNI field and method IDs for fields that may be accessed from C. | |
| isPopupTrigger | back to summary |
|---|---|
| public boolean isPopupTrigger() Returns whether or not this mouse event is the popup menu trigger event for the platform. Note Popup menus are triggered differently
on different systems. Therefore,
| |
| paramString | back to summary |
|---|---|
| public String paramString() Overrides java. Returns a parameter string identifying this event. This method is useful for event-logging and for debugging.
| |
| readObject | back to summary |
|---|---|
| private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException Sets new modifiers by the old ones.
| |
| setNewModifiers | back to summary |
|---|---|
| private void setNewModifiers() Sets new modifiers by the old ones. Also sets button.
| |
| setOldModifiers | back to summary |
|---|---|
| private void setOldModifiers() Sets old modifiers by the new ones.
| |
| translatePoint | back to summary |
|---|---|
| public synchronized void translatePoint(int x, int y) Translates the event's coordinates to a new position
by adding specified
| |