BasicMenuUI.MouseInputHandler (Java Platform SE 8 ) (original) (raw)
- javax.swing.plaf.basic.BasicMenuUI.MouseInputHandler
All Implemented Interfaces:
MouseListener, MouseMotionListener, EventListener, MouseInputListener
Enclosing class:
BasicMenuUI
protected class BasicMenuUI.MouseInputHandler
extends Object
implements MouseInputListener
Instantiated and used by a menu item to handle the current menu selection from mouse events. A MouseInputHandler processes and forwards all mouse events to a shared instance of the MenuSelectionManager.
This class is protected so that it can be subclassed by other look and feels to implement their own mouse handling behavior. All overridden methods should call the parent methods so that the menu selection is correct.
Since:
1.4
See Also:
MenuSelectionManager
Constructor Summary
Constructors
Modifier Constructor Description protected MouseInputHandler() Method Summary
All Methods Instance Methods Concrete Methods
Modifier and Type Method Description void mouseClicked(MouseEvent e) Invoked when the mouse button has been clicked (pressed and released) on a component. void mouseDragged(MouseEvent e) Invoked when a mouse button is pressed on the menu and then dragged. void mouseEntered(MouseEvent e) Invoked when the cursor enters the menu. void mouseExited(MouseEvent e) Invoked when the mouse exits a component. void mouseMoved(MouseEvent e) Invoked when the mouse cursor has been moved onto a component but no buttons have been pushed. void mousePressed(MouseEvent e) Invoked when the mouse has been clicked on the menu. void mouseReleased(MouseEvent e) Invoked when the mouse has been released on the menu. * ### Methods inherited from class java.lang.[Object](../../../../java/lang/Object.html "class in java.lang") `[clone](../../../../java/lang/Object.html#clone--), [equals](../../../../java/lang/Object.html#equals-java.lang.Object-), [finalize](../../../../java/lang/Object.html#finalize--), [getClass](../../../../java/lang/Object.html#getClass--), [hashCode](../../../../java/lang/Object.html#hashCode--), [notify](../../../../java/lang/Object.html#notify--), [notifyAll](../../../../java/lang/Object.html#notifyAll--), [toString](../../../../java/lang/Object.html#toString--), [wait](../../../../java/lang/Object.html#wait--), [wait](../../../../java/lang/Object.html#wait-long-), [wait](../../../../java/lang/Object.html#wait-long-int-)`
Constructor Detail
* #### MouseInputHandler protected MouseInputHandler()
Method Detail
* #### mouseClicked public void mouseClicked([MouseEvent](../../../../java/awt/event/MouseEvent.html "class in java.awt.event") e) Invoked when the mouse button has been clicked (pressed and released) on a component. Specified by: `[mouseClicked](../../../../java/awt/event/MouseListener.html#mouseClicked-java.awt.event.MouseEvent-)` in interface `[MouseListener](../../../../java/awt/event/MouseListener.html "interface in java.awt.event")` * #### mousePressed public void mousePressed([MouseEvent](../../../../java/awt/event/MouseEvent.html "class in java.awt.event") e) Invoked when the mouse has been clicked on the menu. This method clears or sets the selection path of the MenuSelectionManager. Specified by: `[mousePressed](../../../../java/awt/event/MouseListener.html#mousePressed-java.awt.event.MouseEvent-)` in interface `[MouseListener](../../../../java/awt/event/MouseListener.html "interface in java.awt.event")` Parameters: `e` \- the mouse event * #### mouseReleased public void mouseReleased([MouseEvent](../../../../java/awt/event/MouseEvent.html "class in java.awt.event") e) Invoked when the mouse has been released on the menu. Delegates the mouse event to the MenuSelectionManager. Specified by: `[mouseReleased](../../../../java/awt/event/MouseListener.html#mouseReleased-java.awt.event.MouseEvent-)` in interface `[MouseListener](../../../../java/awt/event/MouseListener.html "interface in java.awt.event")` Parameters: `e` \- the mouse event * #### mouseEntered public void mouseEntered([MouseEvent](../../../../java/awt/event/MouseEvent.html "class in java.awt.event") e) Invoked when the cursor enters the menu. This method sets the selected path for the MenuSelectionManager and handles the case in which a menu item is used to pop up an additional menu, as in a hierarchical menu system. Specified by: `[mouseEntered](../../../../java/awt/event/MouseListener.html#mouseEntered-java.awt.event.MouseEvent-)` in interface `[MouseListener](../../../../java/awt/event/MouseListener.html "interface in java.awt.event")` Parameters: `e` \- the mouse event; not used * #### mouseExited public void mouseExited([MouseEvent](../../../../java/awt/event/MouseEvent.html "class in java.awt.event") e) Invoked when the mouse exits a component. Specified by: `[mouseExited](../../../../java/awt/event/MouseListener.html#mouseExited-java.awt.event.MouseEvent-)` in interface `[MouseListener](../../../../java/awt/event/MouseListener.html "interface in java.awt.event")` * #### mouseDragged public void mouseDragged([MouseEvent](../../../../java/awt/event/MouseEvent.html "class in java.awt.event") e) Invoked when a mouse button is pressed on the menu and then dragged. Delegates the mouse event to the MenuSelectionManager. Specified by: `[mouseDragged](../../../../java/awt/event/MouseMotionListener.html#mouseDragged-java.awt.event.MouseEvent-)` in interface `[MouseMotionListener](../../../../java/awt/event/MouseMotionListener.html "interface in java.awt.event")` Parameters: `e` \- the mouse event See Also: [MouseMotionListener.mouseDragged(java.awt.event.MouseEvent)](../../../../java/awt/event/MouseMotionListener.html#mouseDragged-java.awt.event.MouseEvent-) * #### mouseMoved public void mouseMoved([MouseEvent](../../../../java/awt/event/MouseEvent.html "class in java.awt.event") e) Invoked when the mouse cursor has been moved onto a component but no buttons have been pushed. Specified by: `[mouseMoved](../../../../java/awt/event/MouseMotionListener.html#mouseMoved-java.awt.event.MouseEvent-)` in interface `[MouseMotionListener](../../../../java/awt/event/MouseMotionListener.html "interface in java.awt.event")`
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.