|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
javax.swing
类 JMenu
java.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent javax.swing.AbstractButton javax.swing.JMenuItem javax.swing.JMenu
- 所有已实现的接口:
- ImageObserver, ItemSelectable, MenuContainer, Serializable, Accessible, MenuElement, SwingConstants
-
public class JMenu
- extends JMenuItem
- implements Accessible, MenuElement
菜单的该实现是一个包含 JMenuItem
的弹出窗口,用户选择 JMenuBar
上的项时会显示该 JMenuItem。除 JMenuItem
之外,JMenu
还可以包含 JSeparator
。
菜单本质上是带有关联 JPopupMenu
的按钮。当按下“按钮”时,就会显示 JPopupMenu
。如果“按钮”位于 JMenuBar
上,则该菜单为顶层窗口。如果“按钮”是另一个菜单项,则 JPopupMenu
就是“右拉”菜单。
有关使用菜单的示例和信息,请参见《The Java Tutorial》中的 How to Use Menus 一节。
警告:此类的序列化对象将与以后的 Swing 版本不兼容。当前的序列化支持适用于短期存储或运行相同 Swing 版本的应用程序之间的 RMI。从 1.4 版本开始,已在 java.beans
包中添加了支持所有 JavaBeansTM 长期存储的功能。请参见 XMLEncoder
。
- 另请参见:
-
JMenuItem
,JSeparator
,JMenuBar
,JPopupMenu
嵌套类摘要 | |
---|---|
protected class |
JMenu.AccessibleJMenu 此类实现 JMenu 类的可访问性支持。 |
protected class |
JMenu.WinListener 观察弹出窗口关闭的侦听器类。 |
从类 javax.swing.JMenuItem 继承的嵌套类/接口 |
---|
JMenuItem.AccessibleJMenuItem |
从类 javax.swing.AbstractButton 继承的嵌套类/接口 |
---|
AbstractButton.AccessibleAbstractButton, AbstractButton.ButtonChangeListener |
从类 javax.swing.JComponent 继承的嵌套类/接口 |
---|
JComponent.AccessibleJComponent |
从类 java.awt.Container 继承的嵌套类/接口 |
---|
Container.AccessibleAWTContainer |
从类 java.awt.Component 继承的嵌套类/接口 |
---|
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy |
字段摘要 | |
---|---|
protected JMenu.WinListener |
popupListener 弹出菜单的窗口关闭侦听器。 |
从类 javax.swing.JComponent 继承的字段 |
---|
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW |
从类 java.awt.Component 继承的字段 |
---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
从接口 javax.swing.SwingConstants 继承的字段 |
---|
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST |
从接口 java.awt.image.ImageObserver 继承的字段 |
---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
构造方法摘要 | |
---|---|
JMenu() 构造没有文本的新 JMenu 。 |
|
JMenu(Action a) 构造一个从提供的 Action 获取其属性的菜单。 |
|
JMenu(String s) 构造一个新 JMenu ,用提供的字符串作为其文本。 |
|
JMenu(String s, boolean b) 构造一个新 JMenu ,用提供的字符串作为其文本并指定其是否为分离式 (tear-off) 菜单。 |
方法摘要 | |
---|---|
JMenuItem |
add(Action a) 创建连接到指定 Action 对象的新菜单项,并将其追加到此菜单的末尾。 |
Component |
add(Component c) 将组件追加到此菜单的末尾。 |
Component |
add(Component c, int index) 将指定组件添加到此容器的给定位置上。 |
JMenuItem |
add(JMenuItem menuItem) 将某个菜单项追加到此菜单的末尾。 |
JMenuItem |
add(String s) 创建具有指定文本的菜单项,并将其追加到此菜单的末尾。 |
void |
addMenuListener(MenuListener l) 添加菜单事件的侦听器。 |
void |
addSeparator() 将新分隔符追加到菜单的末尾。 |
void |
applyComponentOrientation(ComponentOrientation o) 设置此菜单及其中包含的所有组件的 ComponentOrientation 属性。 |
protected void |
configurePropertiesFromAction(Action a) 该工厂方法根据 Action 实例的值设置 ActionEvent 源的属性。 |
protected PropertyChangeListener |
createActionChangeListener(JMenuItem b) 返回一个正确配置的 PropertyChangeListener ,它在 Action 发生更改时更新控件。 |
protected JMenuItem |
createActionComponent(Action a) 该工厂方法创建添加到 JMenu 的 Action 的 JMenuItem 。 |
protected JMenu.WinListener |
createWinListener(JPopupMenu p) 创建弹出菜单的窗口关闭侦听器。 |
void |
doClick(int pressTime) 以编程方式执行“单击”。 |
protected void |
fireMenuCanceled() 通知所有对此事件类型的通知感兴趣的已注册侦听器。 |
protected void |
fireMenuDeselected() 通知所有对此事件类型的通知感兴趣的已注册侦听器。 |
protected void |
fireMenuSelected() 通知所有对此事件类型的通知感兴趣的已注册侦听器。 |
AccessibleContext |
getAccessibleContext() 获取与此 JMenu 关联的 AccessibleContext。 |
Component |
getComponent() 返回用于绘制此 MenuElement 的 java.awt.Component 。 |
int |
getDelay() 返回子菜单向上或向下弹出前建议的延迟(以毫秒为单位)。 |
JMenuItem |
getItem(int pos) 返回指定位置的 JMenuItem 。 |
int |
getItemCount() 返回菜单上的项数,包括分隔符。 |
Component |
getMenuComponent(int n) 返回位于 n 的组件。 |
int |
getMenuComponentCount() 返回菜单上的组件数。 |
Component[] |
getMenuComponents() 返回菜单子组件的 Component 数组。 |
MenuListener[] |
getMenuListeners() 返回利用 addMenuListener() 添加到此 JMenu 的所有 MenuListener 组成的数组。 |
JPopupMenu |
getPopupMenu() 返回与此菜单关联的弹出菜单。 |
protected Point |
getPopupMenuOrigin() 计算 JMenu 的弹出菜单的原点。 |
MenuElement[] |
getSubElements() 返回由 MenuElement 组成的数组,其中包含此菜单组件的子菜单。 |
String |
getUIClassID() 返回呈现此组件的 L&F 类的名称。 |
JMenuItem |
insert(Action a, int pos) 在给定位置插入连接到指定 Action 对象的新菜单项。 |
JMenuItem |
insert(JMenuItem mi, int pos) 在给定位置插入指定的 JMenuitem 。 |
void |
insert(String s, int pos) 在给定的位置插入一个具有指定文本的新菜单项。 |
void |
insertSeparator(int index) 在指定的位置插入分隔符。 |
boolean |
isMenuComponent(Component c) 如果在子菜单层次结构中存在指定的组件,则返回 true。 |
boolean |
isPopupMenuVisible() 如果菜单的弹出窗口可见,则返回 true。 |
boolean |
isSelected() 如果菜单是当前选择的(即突出显示的)菜单,则返回 true。 |
boolean |
isTearOff() 如果菜单是分离式的,则返回 true。 |
boolean |
isTopLevelMenu() 如果菜单是“顶层菜单”(即菜单栏的直接子级),则返回 true。 |
void |
menuSelectionChanged(boolean isIncluded) 当菜单栏选择更改为激活或取消激活此菜单时传递消息。 |
protected String |
paramString() 返回此 JMenu 的字符串表示形式。 |
protected void |
processKeyEvent(KeyEvent evt) 处理快捷键事件,如助记符和加速器。 |
void |
remove(Component c) 从此菜单移除组件 c 。 |
void |
remove(int pos) 从此菜单移除指定索引处的菜单项。 |
void |
remove(JMenuItem item) 从此菜单移除指定的菜单项。 |
void |
removeAll() 从此菜单移除所有菜单项。 |
void |
removeMenuListener(MenuListener l) 移除菜单事件的侦听器。 |
void |
setAccelerator(KeyStroke keyStroke) 没有为 JMenu 定义 setAccelerator 。 |
void |
setComponentOrientation(ComponentOrientation o) 设置语言敏感的方向,用于排序此组件内的元素或文本。 |
void |
setDelay(int d) 设置菜单的 PopupMenu 向上或向下弹出前建议的延迟。 |
void |
setMenuLocation(int x, int y) 设置弹出组件的位置。 |
void |
setModel(ButtonModel newModel) 设置“菜单按钮”的数据模型,即用户单击可以打开或关闭菜单的标签。 |
void |
setPopupMenuVisible(boolean b) 设置菜单弹出的可见性。 |
void |
setSelected(boolean b) 设置菜单的选择状态。 |
void |
updateUI() 利用当前外观的值重置 UI 属性。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
从接口 javax.swing.MenuElement 继承的方法 |
---|
processKeyEvent, processMouseEvent |
字段详细信息 |
---|
popupListener
protected JMenu.WinListener popupListener
-
弹出菜单的窗口关闭侦听器。
- 另请参见:
-
JMenu.WinListener
构造方法详细信息 |
---|
JMenu
public JMenu()
-
构造没有文本的新
JMenu
。
JMenu
public JMenu(String s)
-
构造一个新
JMenu
,用提供的字符串作为其文本。- 参数:
-
s
- 菜单标签的文本
JMenu
public JMenu(Action a)
-
构造一个从提供的
Action
获取其属性的菜单。- 参数:
-
a
-Action
- 从以下版本开始:
- 1.3
JMenu
public JMenu(String s, boolean b)
-
构造一个新
JMenu
,用提供的字符串作为其文本并指定其是否为分离式 (tear-off) 菜单。- 参数:
-
s
- 菜单标签的文本 -
b
- 菜单是否是分离式的(尚未实现)
方法详细信息 |
---|
updateUI
public void updateUI()
- 利用当前外观的值重置 UI 属性。
-
- 另请参见:
-
JComponent.updateUI()
getUIClassID
public String getUIClassID()
- 返回呈现此组件的 L&F 类的名称。
-
- 覆盖:
-
类
JMenuItem
中的getUIClassID
-
- 返回:
- 字符串 "MenuUI"
- 另请参见:
-
JComponent.getUIClassID()
,UIDefaults.getUI(javax.swing.JComponent)
setModel
public void setModel(ButtonModel newModel)
- 设置“菜单按钮”的数据模型,即用户单击可以打开或关闭菜单的标签。
-
- 覆盖:
-
类
AbstractButton
中的setModel
-
- 参数:
-
newModel
-ButtonModel
- 另请参见:
-
AbstractButton.getModel()
isSelected
public boolean isSelected()
- 如果菜单是当前选择的(即突出显示的)菜单,则返回 true。
-
- 覆盖:
-
类
AbstractButton
中的isSelected
-
- 返回:
- 如果选择了菜单,则返回 true;否则返回 false