java 弹出式菜单里的各个项,设置快捷键没有反应
在普通下拉式菜单中设置快捷键有反应,但在POP_UP菜单设置就不行。下面是部分代码,求大牛解惑。...
在普通下拉式菜单中设置快捷键有反应,但在POP_UP菜单设置就不行。下面是部分代码,求大牛解惑。
展开
若以下回答无法解决问题,邀请你更新回答
展开全部
试试我这个弹出菜单的demo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
public class Program {
public static void main(String[] args) {
JFrame frame = new JFrame("Popup Demo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 创建弹出菜单
JPopupMenu popupMenu = new JPopupMenu("Test");
// 子菜单项
JMenuItem cutMenuItem = new JMenuItem("New");
popupMenu.add(cutMenuItem);
// 子菜单项
JMenuItem copyMenuItem = new JMenuItem("Go Into");
popupMenu.add(copyMenuItem);
// 子菜单项
JMenuItem pasteMenuItem = new JMenuItem("Show In");
pasteMenuItem.setEnabled(false);// 不可用
popupMenu.add(pasteMenuItem);
// 子菜单项分隔符
popupMenu.addSeparator();
// 子菜单项
JMenuItem findMenuItem = new JMenuItem("Copy");
popupMenu.add(findMenuItem);
JButton button = new JButton("button1");
button.setComponentPopupMenu(popupMenu);// 当右键Button时弹出菜单
frame.add(new JPanel(),BorderLayout.NORTH);
frame.add(new JPanel(),BorderLayout.SOUTH);
frame.add(new JPanel(),BorderLayout.EAST);
frame.add(new JPanel(),BorderLayout.WEST);
JPanel jPanel=new JPanel();
jPanel.add(button);
frame.add(jPanel,BorderLayout.CENTER);
frame.setSize(350, 250);
frame.setVisible(true);
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
public class Program {
public static void main(String[] args) {
JFrame frame = new JFrame("Popup Demo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 创建弹出菜单
JPopupMenu popupMenu = new JPopupMenu("Test");
// 子菜单项
JMenuItem cutMenuItem = new JMenuItem("New");
popupMenu.add(cutMenuItem);
// 子菜单项
JMenuItem copyMenuItem = new JMenuItem("Go Into");
popupMenu.add(copyMenuItem);
// 子菜单项
JMenuItem pasteMenuItem = new JMenuItem("Show In");
pasteMenuItem.setEnabled(false);// 不可用
popupMenu.add(pasteMenuItem);
// 子菜单项分隔符
popupMenu.addSeparator();
// 子菜单项
JMenuItem findMenuItem = new JMenuItem("Copy");
popupMenu.add(findMenuItem);
JButton button = new JButton("button1");
button.setComponentPopupMenu(popupMenu);// 当右键Button时弹出菜单
frame.add(new JPanel(),BorderLayout.NORTH);
frame.add(new JPanel(),BorderLayout.SOUTH);
frame.add(new JPanel(),BorderLayout.EAST);
frame.add(new JPanel(),BorderLayout.WEST);
JPanel jPanel=new JPanel();
jPanel.add(button);
frame.add(jPanel,BorderLayout.CENTER);
frame.setSize(350, 250);
frame.setVisible(true);
}
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询