java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JMenuBar
- 所有已实现的接口:
ImageObserver,MenuContainer,Serializable,Accessible,MenuElement
@JavaBean (defaultProperty ="UI", description ="A container for holding and displaying menus.") public class JMenuBar extends JComponent implements Accessible , MenuElement
菜单栏的实现。您将
JMenu 个对象添加到菜单栏以构建菜单。当用户选择一个 JMenu 对象时,会显示其关联的 JPopupMenu,允许用户选择其中一个 JMenuItems。
有关使用菜单栏的信息和示例,请参阅 如何使用菜单,The Java Tutorial. 中的一个部分
Warning: Swing 不是线程安全的。有关详细信息,请参阅 Swing 的线程策略。
Warning: 此类的序列化对象将与未来的 Swing 版本不兼容。当前的序列化支持适用于运行相同版本 Swing 的应用程序之间的短期存储或 RMI。从 1.4 开始,对所有 JavaBeans 的长期存储的支持已添加到 java.beans 包中。请参阅 XMLEncoder 。
Warning: 默认情况下,按 Tab 键不会将焦点从与其他 Swing 组件一起添加到容器的 JMenuBar 转移,因为 JMenuBar 的 focusTraversalKeysEnabled 属性设置为 false 。要解决此问题,您应该调用 JMenuBar.setFocusTraversalKeysEnabled(true) 方法。
- 自从:
- 1.2
- 参见:
-
内部类总结
内部类在类 javax.swing.JComponent 中声明的嵌套类/接口
JComponent.AccessibleJComponent在类 java.awt.Container 中声明的嵌套类/接口
Container.AccessibleAWTContainer -
字段摘要
在类 javax.swing.JComponent 中声明的字段
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW在类 java.awt.Component 中声明的字段
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT在接口 java.awt.image.ImageObserver 中声明的字段
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
构造方法总结
构造方法 -
方法总结
修饰符和类型方法描述将指定的菜单附加到菜单栏的末尾。void覆盖JComponent.addNotify以使用当前键盘管理器注册此菜单栏。获取与此 JMenuBar 关联的 AccessibleContext。实施为MenuElement。getComponentAtIndex(int i) 已弃用。int返回指定组件的索引。获取菜单栏的帮助菜单。返回菜单栏边框与其菜单之间的边距。getMenu(int index) 返回菜单栏中指定位置的菜单。int返回菜单栏中的项目数。返回处理单个选择的模型对象。实现为MenuElement——返回此菜单栏中的菜单。getUI()返回菜单栏的当前 UI。返回呈现此组件的 L&F 类的名称。boolean如果应该绘制菜单栏边框,则返回 true。boolean如果菜单栏当前选择了一个组件,则返回 true。voidmenuSelectionChanged(boolean isIncluded) 实现为MenuElement——什么都不做。protected void如果BorderPainted属性为真,则绘制菜单栏的边框。protected String返回此JMenuBar的字符串表示形式protected booleanprocessKeyBinding(KeyStroke ks, KeyEvent e, int condition, boolean pressed) 子类检查所有子菜单。voidprocessKeyEvent(KeyEvent e, MenuElement[] path, MenuSelectionManager manager) 实现为MenuElement——什么都不做。voidprocessMouseEvent(MouseEvent event, MenuElement[] path, MenuSelectionManager manager) 实现为MenuElement——什么都不做。void覆盖JComponent.removeNotify以使用当前键盘管理器注销此菜单栏。voidsetBorderPainted(boolean b) 设置是否应绘制边框。voidsetHelpMenu(JMenu menu) 设置当用户选择菜单栏中的“帮助”选项时出现的帮助菜单。void设置菜单栏边框与其菜单之间的边距。voidsetSelected(Component sel) 设置当前选择的组件,产生对选择模型的改变。void设置模型对象以处理单个选择。void设置呈现此组件的 L&F 对象。voidupdateUI()使用当前外观的值重置 UI 属性。在类 javax.swing.JComponent 中声明的方法
addAncestorListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, 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, processKeyEvent, 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, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update在类 java.awt.Container 中声明的方法
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, 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, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree在类 java.awt.Component 中声明的方法
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, 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
构造方法详细信息
-
JMenuBar
public JMenuBar()创建一个新的菜单栏。
-
-
方法详情
-
getUI
返回菜单栏的当前 UI。- 重写:
getUI在类JComponent中- 返回:
MenuBarUI是菜单栏的当前 L&F 对象- 参见:
-
setUI
@BeanProperty (hidden =true, visualUpdate =true, description ="The UI object that implements the Component\'s LookAndFeel.") public void setUI(MenuBarUI ui) 设置呈现此组件的 L&F 对象。- 参数:
ui- 新的 MenuBarUI L&F 对象- 参见:
-
updateUI
public void updateUI()使用当前外观的值重置 UI 属性。- 重写:
updateUI在类JComponent中- 参见:
-
getUIClassID
返回呈现此组件的 L&F 类的名称。- 重写:
getUIClassID在类JComponent中- 返回:
- 字符串“MenuBarUI”
- 参见:
-
getSelectionModel
返回处理单个选择的模型对象。- 返回:
SingleSelectionModel属性- 参见:
-
setSelectionModel
@BeanProperty (description ="The selection model, recording which child is selected.") public void setSelectionModel(SingleSelectionModel model) 设置模型对象以处理单个选择。- 参数:
model- 要使用的SingleSelectionModel- 参见:
-
add
将指定的菜单附加到菜单栏的末尾。- 参数:
c- 要添加的JMenu组件- 返回:
- 菜单组件
-
getMenu
返回菜单栏中指定位置的菜单。- 参数:
index- 给出菜单栏位置的整数,其中 0 是第一个位置- 返回:
-
该
JMenu在该位置,或null如果该位置没有JMenu(即如果它是JMenuItem)
-
getMenuCount
返回菜单栏中的项目数。- 返回:
- 菜单栏中的项目数
-
setHelpMenu
设置当用户选择菜单栏中的“帮助”选项时出现的帮助菜单。此方法尚未实现,将抛出异常。- 参数:
menu- 向用户提供帮助的 JMenu
-
getHelpMenu
获取菜单栏的帮助菜单。此方法尚未实现,将抛出异常。- 返回:
-
为用户提供帮助的
JMenu
-
getComponentAtIndex
已弃用。被getComponent(int i)取代返回指定索引处的组件。- 参数:
i- 指定位置的整数,其中 0 是第一个- 返回:
-
该位置的
Component,或无效索引的null
-
getComponentIndex
返回指定组件的索引。- 参数:
c- 要查找的Component- 返回:
- 一个给出组件位置的整数,其中 0 是第一个;或者 -1 如果找不到
-
setSelected
设置当前选择的组件,产生对选择模型的改变。- 参数:
sel- 要选择的Component
-
isSelected
如果菜单栏当前选择了一个组件,则返回 true。- 返回:
- 如果已做出选择,则为 true,否则为 false
-
isBorderPainted
public boolean isBorderPainted()如果应该绘制菜单栏边框,则返回 true。- 返回:
- 如果应该绘制边框,则为 true,否则为 false
-
setBorderPainted
@BeanProperty (visualUpdate =true, description ="Whether the border should be painted.") public void setBorderPainted(boolean b) 设置是否应绘制边框。- 参数:
b- 如果 true 且边框属性不是null,则绘制边框。- 参见:
-
paintBorder
如果BorderPainted属性为真,则绘制菜单栏的边框。- 重写:
paintBorder在类JComponent中- 参数:
g- 用于绘画的Graphics上下文- 参见:
-
setMargin
@BeanProperty (visualUpdate =true, description ="The space between the menubar\'s border and its contents") public void setMargin(Insets m) 设置菜单栏边框与其菜单之间的边距。设置为null将导致菜单栏使用默认边距。- 参数:
m- 包含边距值的 Insets 对象- 参见:
-
getMargin
返回菜单栏边框与其菜单之间的边距。如果没有先前的边距,它将创建一个零尺寸的默认边距。- 返回:
-
包含边距值的
Insets对象 - 参见:
-
processMouseEvent
实现为MenuElement——什么都不做。- 指定者:
processMouseEvent在接口MenuElement中- 参数:
event- 待处理的MouseEventpath- 菜单层次结构中接收元素的路径manager- 菜单层次结构的MenuSelectionManager- 参见:
-
processKeyEvent
实现为MenuElement——什么都不做。- 指定者:
processKeyEvent在接口MenuElement中- 参数:
e- 待处理的KeyEventpath- 菜单层次结构中接收元素的路径manager- 菜单层次结构的MenuSelectionManager- 参见:
-
getSubElements
实现为MenuElement——返回此菜单栏中的菜单。这就是实现MenuElement接口的原因——这样菜单栏就可以像其他菜单元素一样被对待。- 指定者:
getSubElements在接口MenuElement中- 返回:
- 菜单栏中的一系列菜单项。
-
getComponent
实施为MenuElement。返回此对象。- 指定者:
getComponent在接口MenuElement中- 返回:
-
当前
Component(这个) - 参见:
-
paramString
返回此JMenuBar的字符串表示形式。此方法仅用于调试目的,返回字符串的内容和格式可能因实现而异。返回的字符串可能为空,但可能不是null。- 重写:
paramString在类JComponent中- 返回:
-
这个
JMenuBar的字符串表示
-
getAccessibleContext
获取与此 JMenuBar 关联的 AccessibleContext。对于 JMenuBars,AccessibleContext 采用 AccessibleJMenuBar 的形式。如有必要,将创建一个新的 AccessibleJMenuBar 实例。- 指定者:
getAccessibleContext在接口Accessible中- 重写:
getAccessibleContext在类Component中- 返回:
- 作为此 JMenuBar 的 AccessibleContext 的 AccessibleJMenuBar
-
processKeyBinding
子类检查所有子菜单。- 重写:
processKeyBinding在类JComponent中- 参数:
ks- 查询的KeyStrokee-KeyEventcondition- 以下值之一:- JComponent.WHEN_FOCUSED
- JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT
- JComponent.WHEN_IN_FOCUSED_WINDOW
pressed- 如果按键被按下则为真- 返回:
- 如果存在对操作的绑定并且该操作已启用,则为 true
- 自从:
- 1.3
-
addNotify
public void addNotify()覆盖JComponent.addNotify以使用当前键盘管理器注册此菜单栏。- 重写:
addNotify在类JComponent中- 参见:
-
removeNotify
public void removeNotify()覆盖JComponent.removeNotify以使用当前键盘管理器注销此菜单栏。- 重写:
removeNotify在类JComponent中- 参见:
-
getComponent(int i)取代