如何使用箭头键 (up/down) 浏览 java 菜单项?
How to navigate through java menu items with arrow keys (up/down)?
我有一个包含菜单项的菜单。我以编程方式 select 菜单并展开它:
// Create new menu with menu items
JMenu jMenuFile = new JMenu("File");
JMenuItem jMenuItemNew = new JMenuItem("New");
jMenuFile.add(jMenuItemNew );
JMenuItem jMenuItemOpen = new JMenuItem("Open");
menuFile.add(jMenuItemOpen);
// Select menu and expand it
jMenuFile.setSelected(true);
jMenuFile.setPopupMenuVisible(true);
此代码工作正常,但我无法使用箭头键 (up/down) 手动浏览菜单项。如何实现?
注1:如果我设置了助记键
(jMenuFile.setMnemonic ('D')),我得到了焦点,我可以使用方向键了。但是,我不想用助记键
注2:jMenuFile.requestFocus()也不行。
我想你首先得设置一个mnemonic key。使用 "Alt+mnemonic key" 相关菜单应该获得焦点。我想那么也应该可以使用箭头键(不确定)。
我找到了解决方案:
jMenuDatei.doClick();
这模拟了对菜单的点击。因此,它被选中,我可以使用箭头键浏览菜单项。
我有一个包含菜单项的菜单。我以编程方式 select 菜单并展开它:
// Create new menu with menu items
JMenu jMenuFile = new JMenu("File");
JMenuItem jMenuItemNew = new JMenuItem("New");
jMenuFile.add(jMenuItemNew );
JMenuItem jMenuItemOpen = new JMenuItem("Open");
menuFile.add(jMenuItemOpen);
// Select menu and expand it
jMenuFile.setSelected(true);
jMenuFile.setPopupMenuVisible(true);
此代码工作正常,但我无法使用箭头键 (up/down) 手动浏览菜单项。如何实现?
注1:如果我设置了助记键 (jMenuFile.setMnemonic ('D')),我得到了焦点,我可以使用方向键了。但是,我不想用助记键
注2:jMenuFile.requestFocus()也不行。
我想你首先得设置一个mnemonic key。使用 "Alt+mnemonic key" 相关菜单应该获得焦点。我想那么也应该可以使用箭头键(不确定)。
我找到了解决方案:
jMenuDatei.doClick();
这模拟了对菜单的点击。因此,它被选中,我可以使用箭头键浏览菜单项。