单击X按钮关闭Java框架

时间:2017-09-16 09:54:44

标签: java awt

以下是我编写的一段代码,但应用程序顶部的关闭按钮不起作用请帮助

代码:



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

public class App extends Frame implements MouseMotionListener {
	App() {
		addMouseMotionListener(this);
		setSize(200, 200);
		setVisible(true);
	}

	public void mouseDragged(MouseEvent e) {
		Graphics g = getGraphics();
		g.setColor(Color.RED);
		g.fillRect(e.getX(),  e.getY(),10, 10);
	}

	public void mouseMoved(MouseEvent e) {
	}

	public static void main(String[] args)throws Exception {
		App a = new App();
	}

}




图像:

Application Screenshot The close button is not working

4 个答案:

答案 0 :(得分:0)

尝试使用那个小代码:

this.addWindowListener(new WindowAdapter() {

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

}); 

您必须将其插入“App()”中。它将关闭程序“System.exit(0);” 当你按下关闭按钮时。

答案 1 :(得分:0)

您需要在初始化applet时添加Listener并调用dispose。

    addWindowListener(new WindowAdapter() {
        public void windowClosing(WindowEvent e) {
            dispose();
        }
    });

您需要在构造函数中添加上面的代码行。

答案 2 :(得分:0)

我不经常使用AWT但是我的解决方案:)

addWindowListener(new WindowAdapter(){
    @Override
    public void windowClosing(WindowEvent we){
    System.exit(0);
    }
});

将新的WindowAdapter添加到App构造函数并在Window Close事件上调用system.exit(0)

答案 3 :(得分:0)

您可以WindowContants使用JFrame#setDefaultCloseOperation来实现所需的操作。这允许你在构造函数中使用一行来处理框架,完全终止应用程序和其他一些:

this.setDefaultCloseOperation(WindowContants.DISPOSE_ON_CLOSE);

将处置包含应用程序的框架。这足以终止您提供的程序。

这种方法不允许处理任何事件,但只是关闭框架。