如何添加关闭Java程序的JMenuItem?

时间:2012-03-23 12:39:38

标签: java swing awt actionlistener jmenuitem

我是否必须使用ActionListenerAbstractAction

基于答案编辑

那么,这是最好的方法吗?

Action closeaction = new AbstractAction("Afsluiten"){

        @Override
        public void actionPerformed(ActionEvent ae) {
            System.exit(1);
        }

    };
    menuItem = new JMenuItem(closeaction);

1 个答案:

答案 0 :(得分:2)

作为@kleopatra的评论,Action是首选的抽象,AbstractAction是正确的基类。在处理程序中,非零状态表示错误情况。作为替代方案,请考虑发送WINDOW_CLOSING事件,如JDialog所示here

附录:如果您的应用程序需要在终止之前采取某些操作,WINDOW_CLOSING事件很方便。将WindowListener添加到example以查看效果:

this.addWindowListener(new WindowAdapter() {

    @Override
    public void windowClosing(WindowEvent e) {
        System.out.println(e);
    }
});