public class ScrollableMenu
extends javax.swing.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 Formjavax.swing.JMenu.AccessibleJMenu, javax.swing.JMenu.WinListener
javax.swing.JMenuItem.AccessibleJMenuItem
javax.swing.AbstractButton.AccessibleAbstractButton, javax.swing.AbstractButton.ButtonChangeListener
javax.swing.JComponent.AccessibleJComponent
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
Constructor and Description |
---|
ScrollableMenu()
Constructs a new
JMenu with no text. |
ScrollableMenu(javax.swing.Action a)
Constructs a new
JMenu whose properties are taken from the
Action supplied. |
ScrollableMenu(java.lang.String menuTitle)
Constructs a new
JMenu with the supplied string as its text. |
ScrollableMenu(java.lang.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 |
---|---|
java.awt.Component |
add(java.awt.Component component)
Appends a component to the end of this menu.
|
java.awt.Component |
add(java.awt.Component component,
int index)
Adds the specified component to this container at the given position.
|
javax.swing.JMenuItem |
add(javax.swing.JMenuItem menuItem)
Appends a menu item to the end of this menu.
|
protected void |
addScrollableComponent(java.awt.Component component)
Add the specified component at the end of this scrollable menu
|
protected void |
addScrollableComponent(java.awt.Component component,
int pos)
Add the specified component to this scrollable menu
|
void |
addSeparator()
Appends a new separator to the end of the menu.
|
javax.swing.JMenuItem |
getItem(int pos)
Returns the
JMenuItem at the specified position. |
int |
getItemCount()
Returns the number of items on the menu, including separators.
|
java.awt.Component |
getMenuComponent(int n)
Returns the component at position
n . |
int |
getMenuComponentCount()
Returns the number of components on the menu.
|
java.awt.Component[] |
getMenuComponents()
Returns an array of
Component s of the menu's subcomponents. |
javax.swing.MenuElement[] |
getSubElements() |
javax.swing.JMenuItem |
insert(javax.swing.Action a,
int pos)
Inserts a new menu item attached to the specified
Action
object at a given position. |
javax.swing.JMenuItem |
insert(javax.swing.JMenuItem menuItem,
int pos)
Inserts the specified
JMenuitem at a given position. |
void |
insert(java.lang.String s,
int pos) |
boolean |
isMenuComponent(java.awt.Component component)
Returns true if the specified component exists in the submenu hierarchy.
|
void |
remove(java.awt.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(javax.swing.JMenuItem menuItem)
Removes the specified menu item from this menu.
|
void |
removeAll()
Removes all menu items from this menu.
|
protected void |
removeScrollableComponent(java.awt.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, 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, hide, 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, 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
public ScrollableMenu()
JMenu
with no text.public ScrollableMenu(javax.swing.Action a)
JMenu
whose properties are taken from the
Action
supplied.a
- an Action
public ScrollableMenu(java.lang.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(java.lang.String menuTitle)
JMenu
with the supplied string as its text.menuTitle
- the text for the menu labelpublic javax.swing.JMenuItem add(javax.swing.JMenuItem menuItem)
add
in class javax.swing.JMenu
menuItem
- the JMenuitem
to be addedJMenuItem
addedpublic java.awt.Component add(java.awt.Component component)
add
in class javax.swing.JMenu
component
- the Component
to addComponent
addedpublic java.awt.Component add(java.awt.Component component, int index)
index
equals -1, the component will be appended to the end.add
in class javax.swing.JMenu
component
- the Component
to addindex
- the position at which to insert the componentComponent
addedremove(Component)
,
Container.add(Component, int)
public void insert(java.lang.String s, int pos)
insert
in class javax.swing.JMenu
public javax.swing.JMenuItem insert(javax.swing.JMenuItem menuItem, int pos)
JMenuitem
at a given position.insert
in class javax.swing.JMenu
menuItem
- the JMenuitem
to addpos
- an integer specifying the position at which to add the new
JMenuitem
java.lang.IllegalArgumentException
- if the value of pos
< 0public javax.swing.JMenuItem insert(javax.swing.Action a, int pos)
Action
object at a given position.insert
in class javax.swing.JMenu
a
- the Action
object for the menu item to addpos
- an integer specifying the position at which to add the new menu
itemjava.lang.IllegalArgumentException
- if the value of pos
< 0public javax.swing.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 javax.swing.JMenu
pos
- an integer specifying the positionnull
if
the item as the specified position is not a menu itemjava.lang.IllegalArgumentException
- if the value of pos
< 0public int getItemCount()
getItemCount
in class javax.swing.JMenu
getMenuComponentCount()
public void remove(javax.swing.JMenuItem menuItem)
remove
in class javax.swing.JMenu
menuItem
- the JMenuItem
to be removed from the menupublic void remove(int pos)
remove
in class javax.swing.JMenu
pos
- the position of the item to be removedjava.lang.IllegalArgumentException
- if the value of pos
< 0,
or if pos
is greater than the number of menu
itemspublic void remove(java.awt.Component component)
c
from this menu.remove
in class javax.swing.JMenu
component
- the component to be removedpublic void removeAll()
removeAll
in class javax.swing.JMenu
public int getMenuComponentCount()
getMenuComponentCount
in class javax.swing.JMenu
public java.awt.Component getMenuComponent(int n)
n
.getMenuComponent
in class javax.swing.JMenu
n
- the position of the component to be returnednull
if there is no
popup menupublic java.awt.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 javax.swing.JMenu
Component
s or an empty array if there
is no popup menupublic boolean isMenuComponent(java.awt.Component component)
isMenuComponent
in class javax.swing.JMenu
component
- the Component
to be testedComponent
exists, false otherwisepublic void addSeparator()
addSeparator
in class javax.swing.JMenu
protected void addScrollableComponent(java.awt.Component component, int pos)
component
- the Component
to addpos
- an integer specifying the position at which to add the new
componentprotected void addScrollableComponent(java.awt.Component component)
component
- the Component
to addprotected void removeScrollableComponent(java.awt.Component component)
component
- the Component
to removepublic javax.swing.MenuElement[] getSubElements()
getSubElements
in interface javax.swing.MenuElement
getSubElements
in class javax.swing.JMenu
TV-Browser 3.4.3, Copyright (C) 2004-2008 TV-Browser Team (dev@tvbrowser.org)