public class ScrollableMenu extends JMenu
JMenuItem
s that is displayed when the user selects an item on
the JMenuBar
. In addition to JMenuItem
s, a
JMenu
can also contain JSeparator
s.
In essence, a menu is a button with an associated JPopupMenu
.
When the "button" is pressed, the JPopupMenu
appears. If the
"button" is on the JMenuBar
, the menu is a top-level window.
If the "button" is another menu item, then the JPopupMenu
is
"pull-right" menu.
If the menu contains more items than displayable on the screen the menu
becomes scrollable by hiding some of the items and adding an add and a down
arrow at both ends of the menu to scroll the menu with this arrows.
description: A popup window containing menu items displayed in a menu bar.
JPopupMenu
,
Serialized FormJMenu.AccessibleJMenu, JMenu.WinListener
JMenuItem.AccessibleJMenuItem
AbstractButton.AccessibleAbstractButton, AbstractButton.ButtonChangeListener
JComponent.AccessibleJComponent
Container.AccessibleAWTContainer
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
popupListener
actionListener, BORDER_PAINTED_CHANGED_PROPERTY, changeEvent, changeListener, CONTENT_AREA_FILLED_CHANGED_PROPERTY, DISABLED_ICON_CHANGED_PROPERTY, DISABLED_SELECTED_ICON_CHANGED_PROPERTY, FOCUS_PAINTED_CHANGED_PROPERTY, HORIZONTAL_ALIGNMENT_CHANGED_PROPERTY, HORIZONTAL_TEXT_POSITION_CHANGED_PROPERTY, ICON_CHANGED_PROPERTY, itemListener, MARGIN_CHANGED_PROPERTY, MNEMONIC_CHANGED_PROPERTY, model, MODEL_CHANGED_PROPERTY, PRESSED_ICON_CHANGED_PROPERTY, ROLLOVER_ENABLED_CHANGED_PROPERTY, ROLLOVER_ICON_CHANGED_PROPERTY, ROLLOVER_SELECTED_ICON_CHANGED_PROPERTY, SELECTED_ICON_CHANGED_PROPERTY, TEXT_CHANGED_PROPERTY, VERTICAL_ALIGNMENT_CHANGED_PROPERTY, VERTICAL_TEXT_POSITION_CHANGED_PROPERTY
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Constructor and Description |
---|
ScrollableMenu()
Constructs a new
JMenu with no text. |
ScrollableMenu(Action a)
Constructs a new
JMenu whose properties are taken from the
Action supplied. |
ScrollableMenu(String menuTitle)
Constructs a new
JMenu with the supplied string as its text. |
ScrollableMenu(String s,
boolean b)
Constructs a new
JMenu with the supplied string as its text
and specified as a tear-off menu or not. |
Modifier and Type | Method and Description |
---|---|
Component |
add(Component component)
Appends a component to the end of this menu.
|
Component |
add(Component component,
int index)
Adds the specified component to this container at the given position.
|
JMenuItem |
add(JMenuItem menuItem)
Appends a menu item to the end of this menu.
|
protected void |
addScrollableComponent(Component component)
Add the specified component at the end of this scrollable menu
|
protected void |
addScrollableComponent(Component component,
int pos)
Add the specified component to this scrollable menu
|
void |
addSeparator()
Appends a new separator to the end of the menu.
|
JMenuItem |
getItem(int pos)
Returns the
JMenuItem at the specified position. |
int |
getItemCount()
Returns the number of items on the menu, including separators.
|
Component |
getMenuComponent(int n)
Returns the component at position
n . |
int |
getMenuComponentCount()
Returns the number of components on the menu.
|
Component[] |
getMenuComponents()
Returns an array of
Component s of the menu's subcomponents. |
JMenuItem |
insert(Action a,
int pos)
Inserts a new menu item attached to the specified
Action
object at a given position. |
JMenuItem |
insert(JMenuItem menuItem,
int pos)
Inserts the specified
JMenuitem at a given position. |
void |
insert(String s,
int pos) |
boolean |
isMenuComponent(Component component)
Returns true if the specified component exists in the submenu hierarchy.
|
void |
remove(Component component)
Removes the component
c from this menu. |
void |
remove(int pos)
Removes the menu item at the specified index from this menu.
|
void |
remove(JMenuItem menuItem)
Removes the specified menu item from this menu.
|
void |
removeAll()
Removes all menu items from this menu.
|
protected void |
removeScrollableComponent(Component component)
Remove the specified component from this scrollable menu
|
add, add, addMenuListener, applyComponentOrientation, createActionChangeListener, createActionComponent, createWinListener, doClick, fireMenuCanceled, fireMenuDeselected, fireMenuSelected, getAccessibleContext, getComponent, getDelay, getMenuListeners, getPopupMenu, getPopupMenuOrigin, getSubElements, getUIClassID, insertSeparator, isPopupMenuVisible, isSelected, isTearOff, isTopLevelMenu, menuSelectionChanged, paramString, processKeyEvent, removeMenuListener, setAccelerator, setComponentOrientation, setDelay, setMenuLocation, setModel, setPopupMenuVisible, setSelected, updateUI
actionPropertyChanged, addMenuDragMouseListener, addMenuKeyListener, configurePropertiesFromAction, fireMenuDragMouseDragged, fireMenuDragMouseEntered, fireMenuDragMouseExited, fireMenuDragMouseReleased, fireMenuKeyPressed, fireMenuKeyReleased, fireMenuKeyTyped, getAccelerator, getMenuDragMouseListeners, getMenuKeyListeners, init, isArmed, processKeyEvent, processMenuDragMouseEvent, processMenuKeyEvent, processMouseEvent, removeMenuDragMouseListener, removeMenuKeyListener, setArmed, setEnabled, setUI
addActionListener, addChangeListener, addImpl, addItemListener, checkHorizontalKey, checkVerticalKey, createActionListener, createActionPropertyChangeListener, createChangeListener, createItemListener, doClick, fireActionPerformed, fireItemStateChanged, fireStateChanged, getAction, getActionCommand, getActionListeners, getChangeListeners, getDisabledIcon, getDisabledSelectedIcon, getDisplayedMnemonicIndex, getHideActionText, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getItemListeners, getLabel, getMargin, getMnemonic, getModel, getMultiClickThreshhold, getPressedIcon, getRolloverIcon, getRolloverSelectedIcon, getSelectedIcon, getSelectedObjects, getText, getUI, getVerticalAlignment, getVerticalTextPosition, imageUpdate, isBorderPainted, isContentAreaFilled, isFocusPainted, isRolloverEnabled, paintBorder, removeActionListener, removeChangeListener, removeItemListener, removeNotify, setAction, setActionCommand, setBorderPainted, setContentAreaFilled, setDisabledIcon, setDisabledSelectedIcon, setDisplayedMnemonicIndex, setFocusPainted, setHideActionText, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabel, setLayout, setMargin, setMnemonic, setMnemonic, setMultiClickThreshhold, setPressedIcon, setRolloverEnabled, setRolloverIcon, setRolloverSelectedIcon, setSelectedIcon, setText, setUI, setVerticalAlignment, setVerticalTextPosition
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, transferFocusDownCycle, validate, validateTree
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
processKeyEvent, processMouseEvent
public ScrollableMenu()
JMenu
with no text.public ScrollableMenu(Action a)
JMenu
whose properties are taken from the
Action
supplied.a
- an Action
public ScrollableMenu(String s, boolean b)
JMenu
with the supplied string as its text
and specified as a tear-off menu or not.s
- the text for the menu labelb
- can the menu be torn off (not yet implemented)public ScrollableMenu(String menuTitle)
JMenu
with the supplied string as its text.menuTitle
- the text for the menu labelpublic JMenuItem add(JMenuItem menuItem)
public Component add(Component component)
public Component add(Component component, int index)
index
equals -1, the component will be appended to the end.add
in class JMenu
component
- the Component
to addindex
- the position at which to insert the componentComponent
addedremove(Component)
,
Container.add(Component, int)
public JMenuItem insert(JMenuItem menuItem, int pos)
JMenuitem
at a given position.insert
in class JMenu
menuItem
- the JMenuitem
to addpos
- an integer specifying the position at which to add the new
JMenuitem
IllegalArgumentException
- if the value of pos
< 0public JMenuItem insert(Action a, int pos)
Action
object at a given position.insert
in class JMenu
a
- the Action
object for the menu item to addpos
- an integer specifying the position at which to add the new menu
itemIllegalArgumentException
- if the value of pos
< 0public JMenuItem getItem(int pos)
JMenuItem
at the specified position. If the
component at pos
is not a menu item, null
is
returned. This method is included for AWT compatibility.getItem
in class JMenu
pos
- an integer specifying the positionnull
if
the item as the specified position is not a menu itemIllegalArgumentException
- if the value of pos
< 0public int getItemCount()
getItemCount
in class JMenu
getMenuComponentCount()
public void remove(JMenuItem menuItem)
public void remove(int pos)
remove
in class JMenu
pos
- the position of the item to be removedIllegalArgumentException
- if the value of pos
< 0,
or if pos
is greater than the number of menu
itemspublic void remove(Component component)
c
from this menu.public void removeAll()
public int getMenuComponentCount()
getMenuComponentCount
in class JMenu
public Component getMenuComponent(int n)
n
.getMenuComponent
in class JMenu
n
- the position of the component to be returnednull
if there is no
popup menupublic Component[] getMenuComponents()
Component
s of the menu's subcomponents.
Note that this returns all Component
s in the popup menu,
including separators.getMenuComponents
in class JMenu
Component
s or an empty array if there
is no popup menupublic boolean isMenuComponent(Component component)
isMenuComponent
in class JMenu
component
- the Component
to be testedComponent
exists, false otherwisepublic void addSeparator()
addSeparator
in class JMenu
protected void addScrollableComponent(Component component, int pos)
component
- the Component
to addpos
- an integer specifying the position at which to add the new
componentprotected void addScrollableComponent(Component component)
component
- the Component
to addprotected void removeScrollableComponent(Component component)
component
- the Component
to removeTV-Browser 2.7.6, Copyright (C) 04-2003 Martin Oberhauser (martin@tvbrowser.org)