无法在java中关闭框架?

时间:2012-10-03 11:39:42

标签: java swing awt frame windowlistener

大家好我正在用java编写一个小程序,这是我第一次尝试使用接口/图片。

它为我制作了框架但是当我点击关闭按钮X时,它没有关闭它只是对待它就像没有发生任何想法?

class Graph extends Canvas{

    public Graph(){
        setSize(200, 200);
        setBackground(Color.white);
    }

    public static void main(String[] args){

        Graph gr = new Graph();  

        Frame aFrame = new Frame();
        aFrame.setSize(300, 300);       
        aFrame.add(gr);       
        aFrame.setVisible(true);

    }

3 个答案:

答案 0 :(得分:6)

是java.awt.Frame吗?我认为您需要为so:

显式添加处理程序
frame.addWindowListener(new WindowAdapter(){
  public void windowClosing(WindowEvent we){
    System.exit(0);
  }
}

我使用了this来源。

如果是摆动,那就像jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)

答案 1 :(得分:1)

添加aFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

答案 2 :(得分:0)

class Graph extends Canvas{

public Graph(){
    setSize(200, 200);
    setBackground(Color.white);
    addWindowListener( 
              new java.awt.event.WindowAdapter() {
                public void windowClosing( java.awt.event.WindowEvent e ) {
                  System.out.println( "Closing window!" );
                  dispose() ;
                  System.exit( 0 );
                }
                }
            );
}

public static void main(String[] args){

    Graph gr = new Graph();  

    Frame aFrame = new Frame();
    aFrame.setSize(300, 300);       
    aFrame.add(gr);       
    aFrame.setVisible(true);

}