JMenu加快捷键

WayneXuan 2011-06-30 11:15:01
JMenu 重写了 JMenuItem 的 setAccelerator(),不能加 KeyStroke 了,不知有没有其它方式给 JMenu 加快捷键.不过我从没见过哪个程序有给菜单加快捷键的,不知道是为什么
...全文
168 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
WayneXuan 2011-07-02
  • 打赏
  • 举报
回复
我是想把快捷键加至二级菜单.可能确实不行
金兄 2011-07-02
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 xcmcc 的回复:]

JMenu是不允许用setAccelerator()的,只允许加助记符setMnemonic()

正解!!!
[/Quote]
对的,第一层菜单也没必要加了一个快捷菜,真要用快捷菜实现单击一下菜单的效果,用其他方式去处理
horse_leo_zhcn 2011-07-02
  • 打赏
  • 举报
回复
JMenu是不允许用setAccelerator()的,只允许加助记符setMnemonic()

正解!!!
wayneyifeng 2011-07-01
  • 打赏
  • 举报
回复
JMenu是不允许用setAccelerator()的,只允许加助记符setMnemonic()
wayneyifeng 2011-07-01
  • 打赏
  • 举报
回复
也许可以在JFrame上加键盘事件监听器,达到同样目的
WayneXuan 2011-06-30
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 ccnadogteam2 的回复:]

引用 3 楼 waynexuan 的回复:

引用 1 楼 ccnadogteam2 的回复:

重写setAccelerator()后,在重写的setAccelerator()中调一下super.setAccelerator()

难道说你要改写 JMenu 类?

类的结构,基类中非私有的方法、属性重属于子类, JMenu没有重写JMenuItem,但它还是拥有setAcce……
[/Quote]
实际上 JMenu 确实重写了 JMenuItem 的 setAccelerator( )方法,重写的方法只抛出一个异常,你可以自己试一试
ccnadogteam2 2011-06-30
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 waynexuan 的回复:]

引用 1 楼 ccnadogteam2 的回复:

重写setAccelerator()后,在重写的setAccelerator()中调一下super.setAccelerator()

难道说你要改写 JMenu 类?
[/Quote]
类的结构,基类中非私有的方法、属性重属于子类, JMenu没有重写JMenuItem,但它还是拥有setAccelerator()方法,因为JMenu包含了JMenuItem非私有的东西
notice977 2011-06-30
  • 打赏
  • 举报
回复
好好学习!勤敲代码
WayneXuan 2011-06-30
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 ccnadogteam2 的回复:]

重写setAccelerator()后,在重写的setAccelerator()中调一下super.setAccelerator()
[/Quote]
难道说你要改写 JMenu 类?
JT_Hou 2011-06-30
  • 打赏
  • 举报
回复
学习!
ccnadogteam2 2011-06-30
  • 打赏
  • 举报
回复
重写setAccelerator()后,在重写的setAccelerator()中调一下super.setAccelerator()

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧