请问如何当GUI 关闭(close)时, 写入 文件(custom.text) 然后计算总价total?
是否需要一个ActionListener? 然后file.write("custom.text"); 最后再用bufferedreader 读出来计算?最后在把结果写入custom.text?
请高手们写一些代码给我
谢谢!

解决方案 »

  1.   

    this.addWindowListener(new java.awt.event.WindowAdapter() {
    public void windowClosing(java.awt.event.WindowEvent e) {
    System.out.println("windowClosing()"); // TODO Auto-generated Event stub windowClosing()
    }
    });
      

  2.   

    你写的是不是只是窗口的关闭,但是我想要一段可以再关闭同时,写一些信息到 someting.txt ,然后还可以计算总价。 比如: something.txt里包含以下信息: 5pm,7.38
                                    5pm,  6.80
                                    7pm,  12.00
    然后我会得到以下信息:
        something.txt 里包含:       5pm,7.38
                                   5pm,  6.80
                                   7pm,  12.00
                                   total, 26.18谢谢了
      

  3.   

    你要实行关闭的窗口.addWindowListener(new   java.awt.event.WindowAdapter()   { 
    public   void   windowClosing(java.awt.event.WindowEvent   e)   { //这里写上total的计算语句和向someting.txt添加信息的语句;} 
    });这样当窗口关闭的同时就会计算total并向someting.txt添加信息了
      

  4.   

    楼上的各位兄弟说的没错,我来补充几句,在点击窗口右上的红叉后,程序执行如下步骤:
    1.执行windowClosing(WindowEvent e){}里的代码。
    2.执行window.dispose(),销毁窗口。
    3.执行windowClosed(WindowEvent e){}里的代码。楼主只要把你写入文件的代码放入windowClosing(WindowEvent e){}方法中,而且考虑
    到是i/o操作,最好是以线程的方式来实现,以确保万无一失。例如:
    windowClosing(WindowEvent e){
         Thread t=new Thread(){
            public void run(){
               File file=new File("custom.text ");
               //向file里写入你要写的内容
             }
         };
         t.start();
    }
    这样的话,就算窗口被关闭了,线程t还活着,还会继续干活。直到t执行完了所有的任务,系统
    自动关闭。