Class PopupMenu
- java.lang.Object
-
- java.awt.MenuComponent
-
- java.awt.MenuItem
-
- java.awt.Menu
-
- java.awt.PopupMenu
-
- All Implemented Interfaces:
- MenuContainer, Serializable, Accessible
public class PopupMenu extends Menu
A class that implements a menu which can be dynamically popped up at a specified position within a component.As the inheritance hierarchy implies, a
PopupMenu
can be used anywhere aMenu
can be used. However, if you use aPopupMenu
like aMenu
(e.g., you add it to aMenuBar
), then you cannot callshow
on thatPopupMenu
.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description protected class
PopupMenu.AccessibleAWTPopupMenu
Inner class of PopupMenu used to provide default support for accessibility.-
Nested classes/interfaces inherited from class java.awt.Menu
Menu.AccessibleAWTMenu
-
Nested classes/interfaces inherited from class java.awt.MenuItem
MenuItem.AccessibleAWTMenuItem
-
Nested classes/interfaces inherited from class java.awt.MenuComponent
MenuComponent.AccessibleAWTMenuComponent
-
-
Constructor Summary
Constructors Constructor and Description PopupMenu()
Creates a new popup menu with an empty name.PopupMenu(String label)
Creates a new popup menu with the specified name.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description void
addNotify()
Creates the popup menu's peer.AccessibleContext
getAccessibleContext()
Gets theAccessibleContext
associated with thisPopupMenu
.MenuContainer
getParent()
Returns the parent container for this menu component.void
show(Component origin, int x, int y)
Shows the popup menu at the x, y position relative to an origin component.-
Methods inherited from class java.awt.Menu
add, add, addSeparator, countItems, getItem, getItemCount, insert, insert, insertSeparator, isTearOff, paramString, remove, remove, removeAll, removeNotify
-
Methods inherited from class java.awt.MenuItem
addActionListener, deleteShortcut, disable, disableEvents, enable, enable, enableEvents, getActionCommand, getActionListeners, getLabel, getListeners, getShortcut, isEnabled, processActionEvent, processEvent, removeActionListener, setActionCommand, setEnabled, setLabel, setShortcut
-
Methods inherited from class java.awt.MenuComponent
dispatchEvent, getFont, getName, getPeer, getTreeLock, postEvent, setFont, setName, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
-
-
-
-
Constructor Detail
PopupMenu
public PopupMenu() throws HeadlessException
Creates a new popup menu with an empty name.- Throws:
-
HeadlessException
- if GraphicsEnvironment.isHeadless() returns true. - See Also:
-
GraphicsEnvironment.isHeadless()
PopupMenu
public PopupMenu(String label) throws HeadlessException
Creates a new popup menu with the specified name.- Parameters:
-
label
- a non-null
string specifying the popup menu's label - Throws:
-
HeadlessException
- if GraphicsEnvironment.isHeadless() returns true. - See Also:
-
GraphicsEnvironment.isHeadless()
-
Method Detail
getParent
public MenuContainer getParent()
Returns the parent container for this menu component.- Overrides:
-
getParent
in classMenuComponent
- Returns:
-
the menu component containing this menu component, or
null
if this menu component is the outermost component, the menu bar itself
addNotify
public void addNotify()
Creates the popup menu's peer. The peer allows us to change the appearance of the popup menu without changing any of the popup menu's functionality.
show
public void show(Component origin, int x, int y)
Shows the popup menu at the x, y position relative to an origin component. The origin component must be contained within the component hierarchy of the popup menu's parent. Both the origin and the parent must be showing on the screen for this method to be valid.If this
PopupMenu
is being used as aMenu
(i.e., it has a non-Component
parent), then you cannot call this method on thePopupMenu
.- Parameters:
-
origin
- the component which defines the coordinate space -
x
- the x coordinate position to popup the menu -
y
- the y coordinate position to popup the menu - Throws:
-
NullPointerException
- if the parent isnull
-
IllegalArgumentException
- if thisPopupMenu
has a non-Component
parent -
IllegalArgumentException
- if the origin is not in the parent's hierarchy -
RuntimeException
- if the parent is not showing on screen
getAccessibleContext
public AccessibleContext getAccessibleContext()
Gets theAccessibleContext
associated with thisPopupMenu
.- Specified by:
-
getAccessibleContext
in interfaceAccessible
- Overrides:
-
getAccessibleContext
in classMenu
- Returns:
-
the
AccessibleContext
of thisPopupMenu
- Since:
- 1.3
-
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, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.