1、用 awt 和Swing 创建窗口关闭问题。
代码一:
package allHere;
import java.awt.Frame;
public class BallGame extends Frame{
//加载窗口
void LoadFrame(){
setSize(300,300);
setLocation(400,400);
setVisible(true);
}
//main程序的执行入口
public static void main(String[] args) {
// TODO Auto-generated method stub
BallGame game = new BallGame();
game.LoadFrame();
}
}
用了awt的Frame接口创建窗口,没有创建监听。运行后,窗口点x不能关闭,内存未释放。需要点击虚拟机停止的那个红色按钮才行。
结论:JFrame传递参数使得关闭按钮有效。
代码二:
package allHere;
import javax.swing.JFrame;
public class BallGame extends JFrame{
//加载窗口
void LoadFrame(){
setSize(300,300);
setLocation(400,400);
setVisible(true);
}
//main程序的执行入口
public static void main(String[] args) {
// TODO Auto-generated method stub
BallGame game = new BallGame();
game.LoadFrame();
}
}
用了Swing的JFrame接口创建窗口,没有创建监听。运行后,窗口点x能关闭,内存未释放。需要点击虚拟机停止的那个红色按钮内存才能释放。
结论:frame加监听使得关闭按钮有效。