分三种情况来说明:
1. 用户类继承自Frame;
2. Frame对象作为用户类的数据成员;
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();
}
}