使用JButton关闭当前打开的应用程序

时间:2013-10-05 16:58:33

标签: java swing jframe

我想要做的是JButton,当您点击它时,它将关闭JFrame /应用程序。我有一个JButton,但我想知道如何让它关闭当前打开的窗口。

6 个答案:

答案 0 :(得分:3)

将监听器注册到按钮,然后在按钮单击时调用System.exit(0)。

JButton button = new JButton("Close");
button.addActionLister(new ActionListener(){

   public void actionPerformed(ActionEvent e){
       System.exit(0);
  }
});

答案 1 :(得分:2)

actionPerformed()的{​​{1}}中,只需添加JButton即可。你很高兴。

答案 2 :(得分:1)

只需使用JFrame的dispose()方法即可。见其Javadoc

附录:另外,您可能需要将JFrame的默认关闭操作设置为“exit”而不是默认的“hide”。在创建框架时执行此操作。

JFrame frame = new JFrame();
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

// Do whatever your application does.

frame.dispose();    // With this you close the frame.

答案 3 :(得分:1)

请参阅Closing an Application中的ExitAction

这种方法与其他建议略有不同,因为它会将windowClosing()事件调度到Window。这将导致窗口根据窗口的关闭选项关闭,并将调用您可能已添加到窗口的任何窗口侦听器来处理windowClosing()事件。

答案 4 :(得分:0)

只需调用JFrame的dispose()方法,然后调用System.exit(0)

答案 5 :(得分:0)

从包含JFrame应用程序的类中创建一个对象,然后在按钮事件侦听器中创建dispose

for ex。

    public class Application extends JFrame {
        private static final long serialVersionUID = 1L;
        static  Application app= new Application ();

    public Application{
       setLayout(new FlowLayout());
       Container pane =this.getContentPane();

       JPanel right = new JPanel();
       right.setLayout(new GridLayout(4,1));



       ButtonEvent = new JButton("Button");
       right.add(whiteList);


       pane.add(right);

 }

    public class ButtonEvent implements ActionListener{
    public void actionPerformed (ActionEvent event){
        app.dispose();
        dispose();
    }

 }


public static void main(String args[]){
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    app.setVisible(true);
    app.setTitle("Application");
    app.setSize(700,500);
    app.setLocation(350, 100);
    }
}