Java JPOppMenu不工作
我编写了一个简单的程序来理解Java JPOppMenu不工作,java,user-interface,swing,Java,User Interface,Swing,我编写了一个简单的程序来理解jpopmpmenu的工作原理。但我的代码有点问题,不能正确显示弹出菜单。有人能告诉我原因吗 public class PopUpMenu extends JFrame implements ActionListener { JPanel panel; JPopupMenu popMenu; JMenuItem cut; JMenuItem copy; public PopUpMenu() { setVisible(true); setSize(
jpopmpmenu
的工作原理。但我的代码有点问题,不能正确显示弹出菜单。有人能告诉我原因吗
public class PopUpMenu extends JFrame implements ActionListener {
JPanel panel;
JPopupMenu popMenu;
JMenuItem cut;
JMenuItem copy;
public PopUpMenu() {
setVisible(true);
setSize(300, 300);
setDefaultCloseOperation(EXIT_ON_CLOSE);
panel = new JPanel();
popMenu = new JPopupMenu();
cut = new JMenuItem();
popMenu.add(cut);
copy = new JMenuItem();
popMenu.add(copy);
add(panel);
panel.setComponentPopupMenu(popMenu);
addMouseListener(new MouseAdapter() {
public void mouseReleased(MouseEvent Me) {
if (Me.isPopupTrigger()) {
popMenu.show(Me.getComponent(), Me.getX(), Me.getY());
}
}
});
}
public void actionPerformed(ActionEvent arg0) {
}
public static void main(String[] args) {
Runnable r = new Runnable() {
public void run() {
PopUpMenu pop = new PopUpMenu();
}
};
SwingUtilities.invokeLater(r);
}
}您的代码是完美的(不需要鼠标侦听器,面板应该添加到JFrame的内容窗格中),但它可以工作。如果给菜单项添加一些文本,可能效果会更好:
cut = new JMenuItem("Cut");
您的代码是完美的(不需要鼠标侦听器,面板应该添加到JFrame的内容窗格),但它可以工作。如果给菜单项添加一些文本,可能效果会更好:
cut = new JMenuItem("Cut");
您的
MenuItem
大小是0
,这就是我猜的原因
因此,为菜单项设置一些文本
cut = new JMenuItem("Cut");
...
copy = new JMenuItem("Copy");
HTH您的MenuItem
大小是0
,这就是我猜的原因
因此,为菜单项设置一些文本
cut = new JMenuItem("Cut");
...
copy = new JMenuItem("Copy");
HTH非常感谢您的澄清:-)非常感谢您的澄清:-)