| java.awt.event.ComponentEvent java.awt.event.InputEvent java.awt.event.MouseEvent
All known Subclasses: java.awt.event.MouseWheelEvent,
MouseEvent | public class MouseEvent extends InputEvent (Code) | | An event which indicates that a mouse action occurred in a component.
A mouse action is considered to occur in a particular component if and only
if the mouse cursor is over the unobscured part of the component's bounds
when the action happens.
For lightweight components, such as Swing's components, mouse events
are only dispatched to the component if the mouse event type has been
enabled on the component. A mouse event type is enabled by adding the
appropriate mouse-based
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:
- Mouse Events
- a mouse button is pressed
- a mouse button is released
- a mouse button is clicked (pressed and released)
- the mouse cursor enters the unobscured part of component's geometry
- the mouse cursor exits the unobscured part of component's geometry
- Mouse Motion Events
- the mouse is moved
- the mouse is dragged
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 MouseListener s.
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 button
MOUSE_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 button
MOUSE_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 .
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:
- In a multi-screen environment without a virtual device:
The reported coordinates for mouse drag events are clipped to fit within the
bounds of the GraphicsConfiguration associated with
the Component .
- In a multi-screen environment with a virtual device:
The reported coordinates for mouse drag events are clipped to fit within the
bounds of the virtual device associated with the Component .
author: Carl Quinn author: 1.65, 06/05/07 See Also: MouseAdapter See Also: MouseListener See Also: MouseMotionAdapter See Also: MouseMotionListener See Also: MouseWheelListener See Also: Tutorial: Writing a Mouse Listener See Also: Tutorial: Writing a Mouse Motion Listener since: 1.1 |
Field Summary | |
final public static int | BUTTON1 Indicates mouse button #1; used by
MouseEvent.getButton . | final public static int | BUTTON2 Indicates mouse button #2; used by
MouseEvent.getButton . | final public static int | BUTTON3 Indicates mouse button #3; used by
MouseEvent.getButton . | final public static int | MOUSE_CLICKED The "mouse clicked" event. | final public static int | MOUSE_DRAGGED The "mouse dragged" event. | final public static int | MOUSE_ENTERED The "mouse entered" event. | final public static int | MOUSE_EXITED The "mouse exited" event. | final public static int | MOUSE_FIRST The first number in the range of ids used for mouse events. | final public static int | MOUSE_LAST The last number in the range of ids used for mouse events. | final public static int | MOUSE_MOVED The "mouse moved" event. | final public static int | MOUSE_PRESSED The "mouse pressed" event. | final public static int | MOUSE_RELEASED The "mouse released" event. | final public static int | MOUSE_WHEEL The "mouse wheel" event. | final public static int | NOBUTTON Indicates no mouse buttons; used by
MouseEvent.getButton . | int | button Indicates which, if any, of the mouse buttons has changed state. | int | clickCount Indicates the number of quick consecutive clicks of
a mouse button.
clickCount will be valid for only three mouse events :
MOUSE_CLICKED ,
MOUSE_PRESSED and
MOUSE_RELEASED .
For the above, the clickCount will be at least 1. | boolean | popupTrigger A property used to indicate whether a Popup Menu
should appear with a certain gestures.
If popupTrigger = false ,
no popup menu should appear. | int | x The mouse event's x coordinate. | int | y The mouse event's y coordinate. |
Constructor Summary | |
public | MouseEvent(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger, int button) Constructs a MouseEvent object with the
specified source component,
type, modifiers, coordinates, and click count.
Note that passing in an invalid id results in
unspecified behavior. | public | MouseEvent(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger) Constructs a MouseEvent object with the
specified source component,
type, modifiers, coordinates, and click count.
Note that passing in an invalid id results in
unspecified behavior.
An invocation of the form
MouseEvent(source, id, when, modifiers, x, y, clickCount, popupTrigger)
behaves in exactly the same way as the invocation
MouseEvent.MouseEvent(Component,int,long,int,int,int,int,int,int,boolean,int) MouseEvent (source, id, when, modifiers,
x, y, xAbs, yAbs, clickCount, popupTrigger, MouseEvent.NOBUTTON)
where xAbs and yAbs defines as source's location on screen plus
relative coordinates x and y.
xAbs and yAbs are set to zero if the source is not showing.
This method throws an IllegalArgumentException
if source is null .
Parameters: source - the Component that originated the event Parameters: id - the integer that identifies the event Parameters: when - a long int that gives the time the event occurred Parameters: modifiers - the modifier keys down during event (e.g. | 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 MouseEvent object with the
specified source component,
type, modifiers, coordinates, absolute coordinates, and click count.
Note that passing in an invalid id results in
unspecified behavior. |
Method Summary | |
public int | getButton() Returns which, if any, of the mouse buttons has changed state. | public int | getClickCount() Returns the number of mouse clicks associated with this event. | public Point | getLocationOnScreen() Returns the absolute x, y position of the event. | public static String | getMouseModifiersText(int modifiers) Returns a String describing the modifier keys and
mouse buttons that were down during the event, such as "Shift",
or "Ctrl+Shift". | public Point | getPoint() Returns the x,y position of the event relative to the source component. | public int | getX() Returns the horizontal x position of the event relative to the
source component. | public int | getXOnScreen() Returns the absolute horizontal x position of the event. | public int | getY() Returns the vertical y position of the event relative to the
source component. | public int | getYOnScreen() Returns the absolute vertical y position of the event. | 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. | public String | paramString() Returns a parameter string identifying this event. | public synchronized void | translatePoint(int x, int y) Translates the event's coordinates to a new position
by adding specified x (horizontal) and y
(vertical) offsets. |
MOUSE_CLICKED | final public static int MOUSE_CLICKED(Code) | | The "mouse clicked" event. This MouseEvent
occurs when a mouse button is pressed and released.
|
MOUSE_DRAGGED | final public static int MOUSE_DRAGGED(Code) | | The "mouse dragged" event. This MouseEvent
occurs when the mouse position changes while a mouse button is pressed.
|
MOUSE_ENTERED | final public static int MOUSE_ENTERED(Code) | | The "mouse entered" event. This MouseEvent
occurs when the mouse cursor enters the unobscured part of component's
geometry.
|
MOUSE_EXITED | final public static int MOUSE_EXITED(Code) | | The "mouse exited" event. This MouseEvent
occurs when the mouse cursor exits the unobscured part of component's
geometry.
|
MOUSE_FIRST | final public static int MOUSE_FIRST(Code) | | The first number in the range of ids used for mouse events.
|
MOUSE_LAST | final public static int MOUSE_LAST(Code) | | The last number in the range of ids used for mouse events.
|
MOUSE_MOVED | final public static int MOUSE_MOVED(Code) | | The "mouse moved" event. This MouseEvent
occurs when the mouse position changes.
|
MOUSE_PRESSED | final public static int MOUSE_PRESSED(Code) | | The "mouse pressed" event. This MouseEvent
occurs when a mouse button is pushed down.
|
MOUSE_RELEASED | final public static int MOUSE_RELEASED(Code) | | The "mouse released" event. This MouseEvent
occurs when a mouse button is let up.
|
MOUSE_WHEEL | final public static int MOUSE_WHEEL(Code) | | The "mouse wheel" event. This is the only MouseWheelEvent .
It occurs when a mouse equipped with a wheel has its wheel rotated.
since: 1.4 |
button | int button(Code) | | Indicates which, if any, of the mouse buttons has changed state.
The only legal values are the following constants:
NOBUTTON ,
BUTTON1 ,
BUTTON2 or
BUTTON3 .
See Also: #getButton(). |
clickCount | int clickCount(Code) | | Indicates the number of quick consecutive clicks of
a mouse button.
clickCount will be valid for only three mouse events :
MOUSE_CLICKED ,
MOUSE_PRESSED and
MOUSE_RELEASED .
For the above, the clickCount will be at least 1.
For all other events the count will be 0.
See Also: #getClickCount(). |
popupTrigger | boolean popupTrigger(Code) | | A property used to indicate whether a Popup Menu
should appear with a certain gestures.
If popupTrigger = false ,
no popup menu should appear. If it is true
then a popup menu should appear.
See Also: java.awt.PopupMenu See Also: MouseEvent.isPopupTrigger() |
x | int x(Code) | | The mouse event's x coordinate.
The x value is relative to the component that fired the event.
See Also: MouseEvent.getX() |
y | int y(Code) | | The mouse event's y coordinate.
The y value is relative to the component that fired the event.
See Also: MouseEvent.getY() |
MouseEvent | public MouseEvent(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger, int button)(Code) | | Constructs a MouseEvent object with the
specified source component,
type, modifiers, coordinates, and click count.
Note that passing in an invalid id results in
unspecified behavior. 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(source, id, when, modifiers, x, y, clickCount, popupTrigger, button)
behaves in exactly the same way as the invocation
MouseEvent.MouseEvent(Component,int,long,int,int,int,int,int,int,boolean,int) MouseEvent (source, id, when, modifiers,
x, y, xAbs, yAbs, clickCount, popupTrigger, button)
where xAbs and yAbs defines as source's location on screen plus
relative coordinates x and y.
xAbs and yAbs are set to zero if the source is not showing.
This method throws an
IllegalArgumentException if source
is null .
Parameters: source - the Component that originated the event Parameters: id - the integer that identifies the event Parameters: when - a long int that gives the time the event occurred Parameters: modifiers - the modifier keys down during event (e.g. shift, ctrl,alt, meta)Either extended _DOWN_MASK or old _MASK modifiersshould be used, but both models should not be mixedin one event. Use of the extended modifiers ispreferred. Parameters: x - the horizontal x coordinate for the mouse location Parameters: y - the vertical y coordinate for the mouse location Parameters: clickCount - the number of mouse clicks associated with event Parameters: popupTrigger - a boolean, true if this event is a trigger for apopup menu Parameters: button - which of the mouse buttons has changed state.NOBUTTON ,BUTTON1 ,BUTTON2 orBUTTON3 . throws: IllegalArgumentException - if an invalid button value is passed in throws: IllegalArgumentException - if source is null since: 1.4 |
MouseEvent | public MouseEvent(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger)(Code) | | Constructs a MouseEvent object with the
specified source component,
type, modifiers, coordinates, and click count.
Note that passing in an invalid id results in
unspecified behavior.
An invocation of the form
MouseEvent(source, id, when, modifiers, x, y, clickCount, popupTrigger)
behaves in exactly the same way as the invocation
MouseEvent.MouseEvent(Component,int,long,int,int,int,int,int,int,boolean,int) MouseEvent (source, id, when, modifiers,
x, y, xAbs, yAbs, clickCount, popupTrigger, MouseEvent.NOBUTTON)
where xAbs and yAbs defines as source's location on screen plus
relative coordinates x and y.
xAbs and yAbs are set to zero if the source is not showing.
This method throws an IllegalArgumentException
if source is null .
Parameters: source - the Component that originated the event Parameters: id - the integer that identifies the event Parameters: when - a long int that gives the time the event occurred Parameters: modifiers - the modifier keys down during event (e.g. shift, ctrl,alt, meta)Either extended _DOWN_MASK or old _MASK modifiersshould be used, but both models should not be mixedin one event. Use of the extended modifiers ispreferred. Parameters: x - the horizontal x coordinate for the mouse location Parameters: y - the vertical y coordinate for the mouse location Parameters: clickCount - the number of mouse clicks associated with event Parameters: popupTrigger - a boolean, true if this event is a trigger for apopup menu throws: IllegalArgumentException - if source is null |
MouseEvent | public MouseEvent(Component source, int id, long when, int modifiers, int x, int y, int xAbs, int yAbs, int clickCount, boolean popupTrigger, int button)(Code) | | Constructs a MouseEvent object with the
specified source component,
type, modifiers, coordinates, absolute coordinates, and click count.
Note that passing in an invalid id results in
unspecified behavior. 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
IllegalArgumentException if source
is null .
Parameters: source - the Component that originated the event Parameters: id - the integer that identifies the event Parameters: when - a long int that gives the time the event occurred Parameters: modifiers - the modifier keys down during event (e.g. shift, ctrl,alt, meta)Either extended _DOWN_MASK or old _MASK modifiersshould be used, but both models should not be mixedin one event. Use of the extended modifiers ispreferred. Parameters: x - the horizontal x coordinate for the mouse location Parameters: y - the vertical y coordinate for the mouse location Parameters: xAbs - the absolute horizontal x coordinate for the mouse location Parameters: yAbs - the absolute vertical y coordinate for the mouse location Parameters: clickCount - the number of mouse clicks associated with event Parameters: popupTrigger - a boolean, true if this event is a trigger for apopup menu Parameters: button - which of the mouse buttons has changed state.NOBUTTON ,BUTTON1 ,BUTTON2 orBUTTON3 . throws: IllegalArgumentException - if an invalid button value is passed in throws: IllegalArgumentException - if source is null since: 1.6 |
getButton | public int getButton()(Code) | | Returns which, if any, of the mouse buttons has changed state.
one of the following constants:NOBUTTON ,BUTTON1 ,BUTTON2 orBUTTON3 . since: 1.4 |
getClickCount | public int getClickCount()(Code) | | Returns the number of mouse clicks associated with this event.
integer value for the number of clicks |
getLocationOnScreen | public Point getLocationOnScreen()(Code) | | 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.
a Point object containing the absolute xand y coordinates. See Also: java.awt.GraphicsConfiguration since: 1.6 |
getMouseModifiersText | public static String getMouseModifiersText(int modifiers)(Code) | | Returns a String describing the modifier keys and
mouse buttons that were down during the event, such as "Shift",
or "Ctrl+Shift". These strings can be localized by changing
the awt.properties file.
Note that InputEvent.ALT_MASK and
InputEvent.BUTTON2_MASK have the same value,
so the string "Alt" is returned for both modifiers. Likewise,
InputEvent.META_MASK and
InputEvent.BUTTON3_MASK have the same value,
so the string "Meta" is returned for both modifiers.
Parameters: modifiers - a modifier mask describing the modifier keys and mouse buttons that were down during the event string a text description of the combination of modifierkeys and mouse buttons that were down during the event See Also: InputEvent.getModifiersExText(int) since: 1.4 |
getPoint | public Point getPoint()(Code) | | Returns the x,y position of the event relative to the source component.
a Point object containing the x and y coordinates relative to the source component |
getX | public int getX()(Code) | | Returns the horizontal x position of the event relative to the
source component.
x an integer indicating horizontal position relative tothe component |
getXOnScreen | public int getXOnScreen()(Code) | | 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.
x an integer indicating absolute horizontal position. See Also: java.awt.GraphicsConfiguration since: 1.6 |
getY | public int getY()(Code) | | Returns the vertical y position of the event relative to the
source component.
y an integer indicating vertical position relative tothe component |
getYOnScreen | public int getYOnScreen()(Code) | | 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.
y an integer indicating absolute vertical position. See Also: java.awt.GraphicsConfiguration since: 1.6 |
isPopupTrigger | public boolean isPopupTrigger()(Code) | | 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, isPopupTrigger
should be checked in both mousePressed
and mouseReleased
for proper cross-platform functionality.
boolean, true if this event is the popup menu triggerfor this platform |
paramString | public String paramString()(Code) | | Returns a parameter string identifying this event.
This method is useful for event-logging and for debugging.
a string identifying the event and its attributes |
translatePoint | public synchronized void translatePoint(int x, int y)(Code) | | Translates the event's coordinates to a new position
by adding specified x (horizontal) and y
(vertical) offsets.
Parameters: x - the horizontal x value to add to the current xcoordinate position Parameters: y - the vertical y value to add to the current ycoordinate position |
|
|