java中关闭Frame窗口

java中如何关闭Frame窗口?
分三种情况来说明:
   1. 用户类继承自Frame;
   2. Frame对象作为用户类的数据成员;
   3. 用户类继承自WindowAdapter.
  
1. 用户类继承自Frame:
代码如下:

import java.awt.*;
import java.awt.event.*;

 public  class MyFrame extends  Frame
{

 public void display()
 {

  this.setTitle("MyFrame");
  this.setSize(480,200);
  this.setLocation (200,400);
  this.setBackground (Color.lightGray);

  this.setVisible(true);

 }


 public static void main (String args[])
 {

  MyFrame f = new MyFrame();

  f.addWindowListener(new WindowAdapter()  //为了关闭窗口
  {
   public void windowClosing(WindowEvent e)
   {
       System.exit(0);
   }
  });

  f.display();

 }
}

2. Frame对象作为用户类的数据成员:

代码如下:

import java.awt.*;
import java.awt.event.*;

public   class MyFrame2
{
     Frame f = new Frame();
     MyFrame2()
     {
      f.addWindowListener(new WindowAdapter()  //为了关闭窗口
      {
       public void windowClosing(WindowEvent e)
       {
           System.exit(0);
       }
      });
     }


 public void display()
 {

  f.setTitle("MyFrame");
  f.setSize(480,200);
  f.setLocation (200,400);
  f.setBackground (Color.lightGray);

  f.setVisible(true);

 }


 public static void main (String args[])
 {

  new MyFrame2().display();

 }
}

3. 用户类继承自WindowAdapter,而窗口对象Frame作为用户类的数据成员.

代码如下:

import java.awt.*;
import java.awt.event.*;

public   class MyFrame3 extends WindowAdapter
{
 Frame f = new Frame();

 public void display()
 {

  f.setTitle("MyFrame");
  f.setSize(480,200);
  f.setLocation (200,400);
  f.setBackground (Color.lightGray);

  f.addWindowListener (this);  //窗体f--注册窗体事件监听器


  f.setVisible(true);

 }

 public void windowClosing(WindowEvent e)
 {
  System.exit(0);
 }


 public static void main (String args[])
 {

  new MyFrame3().display();


 }
}


版权声明:本文为liranke原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。