addWindowListener(new WindowAdapter(){public void windowclosing(WindowEvent e){System.exit(0);}});

解决方案 »

  1.   

    我这么写它说不认识addWindowListener方法import java.awt.*;
    import java.awt.event.*;public class TGT extends Frame
    {
      public static void main(String[] args)
      {
        TGT t=new TGT();
      }
      
      public TGT()
      {
        WA wa=new WA();
        addWindowListner(wa);    setBounds(100,100,400,400);
        setVisible(true);
      }
    }
    class WA extends WindowAdapter
    {
      public void windowclosing(WindowEvent we)
      {
        System.exit(0);
      }
    }
      

  2.   

    我改了一下,编译通过了,但是有3个问题:
    1.为什么上面的程序不行,下面编译就通过?
    2.下面这个程序运行后,按X是没有反映的,为什么?
    3.应该怎么改?import java.awt.*;
    import java.awt.event.*;public class TGT extends Frame
    {
      public static void main(String[] args)
      {
        TGT t=new TGT();
        WA wa=new WA();
        t.addWindowListener(wa);
      }
      
      public TGT()
      {
        setBounds(100,100,400,400);
        setVisible(true);
      }
    }
    class WA extends WindowAdapter
    {
      public void windowclosing(WindowEvent we)
      {
        System.exit(1);
      }
    }
      

  3.   

    import java.awt.*;
    import java.awt.event.*;class Test extends Frame 
    {
       public Test()
      {
          addWindowListener(new WindowAdapter(){
    public void windowClosing(WindowEvent e)
                               {
    dispose();
    System.exit(0);
    }
    });
    } public static void main(String args[]) {
    System.out.println("Starting Test...");
    Test mainFrame = new Test();
    mainFrame.setSize(400, 400);
    mainFrame.setTitle("Test");
    mainFrame.setVisible(true);
    }
    }应该在构建器里面或者窗体显示出来之前,给他制定监视器。
      

  4.   

    addWindowListener()不是静态方法,必须实例化后才可以用。
    我打错了,public void windowClosing(WindowEvent we)
    可以了
      

  5.   

    如果我不用内部类写呢,你看看下面这个程序,注意注释的地方,那里应该怎么改呢?
    import java.awt.*;
    import java.awt.event.*;public class TGT extends Frame
    {
      public static void main(String[] args)
      {
        TGT t=new TGT();  }
      
      public TGT()
      {
        WA wa=new WA();
        addWindowListener(wa);
        setBounds(100,100,400,400);
        setVisible(true);
      }
    }
    class WA extends WindowAdapter
    {
      public void windowclosing(WindowEvent we)
      {
        dispose(); //这个地方应该怎么写,才通过?
        System.exit(0);
      }
    }
      

  6.   

    根本实现不了,因为dispose是要操作frame的类实例,所以
    frame对Adapter必须是可见的,那不用内部类怎么实现呢?内部类有很多好处,可以让你写出简洁的代码
    在AWT里面处处可见内部类的例子。
    为什么不用内部类呢?
      

  7.   

    嗯,想想也是这样的。
    再问问:exit(0)和exit(1)有什么区别啊?