java.awt
Class PopupMenu

java.lang.Object
  |
  +--java.awt.MenuComponent
        |
        +--java.awt.MenuItem
              |
              +--java.awt.Menu
                    |
                    +--java.awt.PopupMenu

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 a Menu can be used. However, if you use a PopupMenu like a Menu (e.g., you add it to a MenuBar), then you cannot call show on that PopupMenu.

See Also:
Serialized Form

Field Summary
private static String base
           
(package private) static int nameCounter
           
private static long serialVersionUID
           
 
Fields inherited from class java.awt.Menu
base, isHelpMenu, items, menuSerializedDataVersion, nameCounter, serialVersionUID, tearOff
 
Fields inherited from class java.awt.MenuItem
actionCommand, actionListener, base, enabled, eventMask, label, menuItemSerializedDataVersion, nameCounter, serialVersionUID, shortcut
 
Fields inherited from class java.awt.MenuComponent
actionListenerK, appContext, font, itemListenerK, name, nameExplicitlySet, newEventsOnly, parent, peer, serialVersionUID
 
Constructor Summary
PopupMenu()
          Creates a new popup menu.
PopupMenu(String label)
          Creates a new popup menu with the specified name.
 
Method Summary
 void addNotify()
          Creates the popup menu's peer.
(package private)  String constructComponentName()
          Construct a name for this MenuComponent.
 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, countItemsImpl, deleteShortcut, getItem, getItemCount, getItemImpl, getShortcutMenuItem, handleShortcut, initIDs, insert, insert, insertSeparator, isTearOff, paramString, readObject, remove, remove, removeAll, removeNotify, shortcuts, writeObject
 
Methods inherited from class java.awt.MenuItem
addActionListener, deleteShortcut, disable, disableEvents, enable, enable, enableEvents, eventEnabled, getActionCommand, getLabel, getShortcut, isEnabled, processActionEvent, processEvent, removeActionListener, setActionCommand, setEnabled, setLabel, setShortcut
 
Methods inherited from class java.awt.MenuComponent
dispatchEvent, dispatchEventImpl, getFont_NoClientCode, getFont, getName, getParent_NoClientCode, getParent, getPeer, getTreeLock, postEvent, setFont, setName, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

base

private static final String base

nameCounter

static int nameCounter

serialVersionUID

private static final long serialVersionUID
Constructor Detail

PopupMenu

public PopupMenu()
Creates a new popup menu.

PopupMenu

public PopupMenu(String label)
Creates a new popup menu with the specified name.
Parameters:
label - a non-null string specifying the popup menu's label
Method Detail

constructComponentName

String constructComponentName()
Construct a name for this MenuComponent. Called by getName() when the name is null.
Overrides:
constructComponentName in class Menu

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.
Overrides:
addNotify in class Menu

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 a Menu (i.e., it has a non-Component parent), then you cannot call this method on the PopupMenu.

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:
IllegalArgumentException - if this PopupMenu has a non- Component parent