退出时如何调用方法?

时间:2014-05-28 10:39:30

标签: java swing

我有一个挥杆应用程序。只要应用程序运行,我就操纵内部类。但是当用户EXITS_ON_ClOSE时,我必须将数据保存在文件中如何保存它。这是我目前的实施

    public static void main (String args[]) throws NumberFormatException, IOException{
        displayCalendar p;
        Saver save = new Saver();      
        p = new displayCalendar(save);

        JFrame fr = new JFrame();
        fr.add(p);
        fr.setDefaultCloseOperation(EXIT_ON_CLOSE);
        fr.setSize(500,500);
        fr.setVisible(true);
        save.saveAll();
}

那是我在退出主要之前试图保存。但我根本无法达到这个功能。我该如何保存?

3 个答案:

答案 0 :(得分:1)

这可能是您的解决方案

addWindowListener(new WindowAdapter()
        {
            @Override
            public void windowClosing(WindowEvent windowEvent)
            {
               // here your logic to save the data
                System.out.println("Window is being Closed");
                windowEvent.getWindow().dispose();
            }
        });

答案 1 :(得分:0)

使用WindowListener

添加JFrame
fr.addWindowListener(new WindowAdapter() {
   @Override
   public void windowClosing(WindowEvent e) {
       //Call the method here.
   }
}

答案 2 :(得分:0)

使用WindowAdapter在setDefaultCloseOperation上创建自定义操作:

请参阅this我希望它对您有所帮助。