java swing制作右键菜单

java swing中如何实现右键菜单呢?
右键菜单
直接上代码:

/*** java
     * 设置弹出菜单
     * @param qrResultLabel
     */
    private void setPopupMenu(JComponent qrResultLabel)
    {
        final MyMenuActionListener myMenuListener=new MyMenuActionListener(this);
        qrResultLabel.addMouseListener(new MouseInputAdapter()
        {

            @Override
            public void mouseReleased(MouseEvent e)
            {
                //                super.mousePressed(e);
                if (e.getButton() == MouseEvent.BUTTON3)
                {
                    JPopupMenu textMenu = new JPopupMenu();
                    JMenuItem cleanUpM = new JMenuItem(MenuUtil2.ACTION_STR_CLEANUP);
                    JMenuItem copy22M = new JMenuItem(
                        MenuUtil2.ACTION_IMAGE_COPY);
                    JMenuItem paste22M = new JMenuItem(
                            MenuUtil2.ACTION_IMAGE_PASTE);
                    JMenuItem enlargeM = new JMenuItem(
                            MenuUtil2.ACTION_ENLARGE);
                    JMenuItem reduceM = new JMenuItem(
                            MenuUtil2.ACTION_REDUCE);
//                    JMenuItem pasteM = new JMenuItem(MenuUtil2.ACTION_STR_PASTE);

                    JMenuItem exportM = new JMenuItem(
                        MenuUtil2.ACTION_STR_EXPORT);
                    JMenuItem readQRCodeM = new JMenuItem(
                            MenuUtil2.ACTION_READ_QR_CODE);
                    copy22M.addActionListener(myMenuListener);
                    cleanUpM.addActionListener(myMenuListener);
                    exportM.addActionListener(myMenuListener);
                    enlargeM.addActionListener(myMenuListener);
                    reduceM.addActionListener(myMenuListener);
                    paste22M.addActionListener(myMenuListener);
                    readQRCodeM.addActionListener(myMenuListener);
                    textMenu.add(cleanUpM);
                    textMenu.add(copy22M);
                    textMenu.add(paste22M);
//                    exportM.add(pasteM);
                    textMenu.add(exportM);
                    textMenu.add(enlargeM);
                    textMenu.add(reduceM);
                    textMenu.add(readQRCodeM);
                    textMenu.show(e.getComponent(), e.getX(), e.getY());
                }
            }

        });

    }

注意:
1,鼠标右键对应的code是:MouseEvent.BUTTON3(3)
2,弹出菜单要使用JPopupMenu

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值