【问题标题】:Java JMenu actionPerformed doesn't workJava JMenu actionPerformed 不起作用
【发布时间】:2013-05-21 22:07:16
【问题描述】:

所以,我已经为 JMenu 组件实现了匿名操作侦听器,所以我想知道 JMenu 是否可以在没有 JMenuItems 的情况下执行一些操作,例如仅 JMenu...退出?

@Override
    public void menuBarItemExit(JMenuBar menubar) {
        exitMenuItem = new JMenu("Exit");
        exitMenuItem.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent e) {
                System.exit(0);
            }
        });
        menubar.add(exitMenuItem);
    }

【问题讨论】:

    标签: java swing user-interface actionlistener jmenu


    【解决方案1】:

    使用MenuListener 而不是ActionListener

    exitMenuItem.addMenuListener(new MenuListener() {
        @Override
        public void menuSelected(MenuEvent e) {
            System.exit(0);
        }
    
        @Override
        public void menuDeselected(MenuEvent e) {
        }
    
        @Override
        public void menuCanceled(MenuEvent e) {
        }
    });
    

    来自甲骨文:JMenu ignores ActionEvent

    【讨论】:

      猜你喜欢
      • 2016-08-28
      • 1970-01-01
      • 2012-09-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-14
      相关资源
      最近更新 更多