- 所有已知的实现类:
-
BasicComboPopup
,BasicInternalFrameTitlePane.SystemMenuBar
,JCheckBoxMenuItem
,JMenu
,JMenuBar
,JMenuItem
,JPopupMenu
,JRadioButtonMenuItem
,MetalComboBoxUI.MetalComboPopup
public interface MenuElement
任何可以放置在菜单中的组件都应该实现这个接口。这个接口被
MenuSelectionManager
用于处理菜单层次结构中的选择和导航。
- 自JDK版本:
- 1.2
-
Method Summary
Modifier and TypeMethodDescription这个方法应该返回用于绘制接收元素的java.awt.Component
。这个方法应该返回一个包含接收菜单元素的子元素的数组。void
menuSelectionChanged
(boolean isIncluded) 当MenuElement
被添加或从菜单选择中移除时,由MenuSelectionManager
调用。void
processKeyEvent
(KeyEvent event, MenuElement[] path, MenuSelectionManager manager) 处理键盘事件。void
processMouseEvent
(MouseEvent event, MenuElement[] path, MenuSelectionManager manager) 处理鼠标事件。
-
Method Details
-
processMouseEvent
处理鼠标事件。event
是一个源为接收元素组件的MouseEvent
。path
是菜单层次结构中接收元素的路径,包括接收元素本身。manager
是菜单层次结构的MenuSelectionManager
。该方法应该处理MouseEvent
,并根据需要使用MenuSelectionManager
的API更改菜单选择。注意: 您不必将事件转发给子组件。这是由MenuSelectionManager
自动完成的。- 参数:
-
event
- 要处理的MouseEvent
-
path
- 菜单层次结构中接收元素的路径 -
manager
- 菜单层次结构的MenuSelectionManager
-
processKeyEvent
处理键盘事件。- 参数:
-
event
- 要处理的KeyEvent
-
path
- 菜单层次结构中接收元素的路径 -
manager
- 菜单层次结构的MenuSelectionManager
-
getSubElements
MenuElement[] getSubElements()这个方法应该返回一个包含接收菜单元素的子元素的数组。- 返回:
-
一个
MenuElement
数组
-
getComponent
Component getComponent()这个方法应该返回用于绘制接收元素的java.awt.Component
。返回的组件将用于转换事件并检测事件是否在MenuElement
的组件内部。- 返回:
-
Component
值
-