Java笔记(八)——Swing图形界面编程之菜单

Java中菜单分为常规式菜单和弹出式菜单。

1.常规式菜单:由菜单栏(JMenuBar)、下拉菜单项(JMenu)和命令菜单项(JMenuItem、JCheckBoxMenuItem、JRadioButtonMenuItem)组成,他们在swing中层次关系如下图:

 

菜单栏JMenuBar仅拥有setJMenuBar成员函数的容器能设置,如JFrame、Japplet。通过JMenuBar的add方法想菜单栏中添加菜单项。

可以通过JMenu的add方法添加命令菜单项,通过insertSeparator方法添加分隔条。

菜单项都有拥有setMnemonic成员方法设置助记符(按住alt和助记符激活下拉菜单项),命令菜单项还拥有成员方法setAccelerator(KeyStroke keyStroke)设置快捷键。KeyStroke对象可以由其静态成员方法getKeyStroke(String s)获取,字符串s有修饰词和按键两部分组成,修饰词为一下任意一个单词:

shift control ctrl meta alt altGraph。

JMenuItem、JCheckBoxMenuItem、JRadioButtonMenuItem的事件处理分别和JButton、JCheckBox、JRadioButton对应。

 

2.弹出式菜单:JPopupMenu,通过成员方法public JMenuItem add(JMenuItem menuItem)添加菜单项。通过MouseAdapter或MouseListener监听鼠标事件,调用JPopupMenu的show成员函数显示弹出式菜单,但是调用前要利用MouseEvent成员方法public boolean isPopupTrigger()函数判断鼠标事件是否用来触发弹出式菜单事件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值