java AWT组件出来的窗口关不掉 怎么回事 能运行 点击右上角的X就是关不掉

代码如下
import java.awt.*;
public class FrameEx extends Frame{
FrameEx(){
tihis.setTitle("标题");
this.setBounds(100,100,250,250);
this.setVisible(true);
}
public static void main(String [] args){
new FrameEx();
}
}

你确定你的代码能运行?错误也太多了吧?
帮你改了一下,目测是因为你继承自Frame但没有设置关闭的监听器
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class Test extends Frame{
private static final long serialVersionUID = 1L;
public Test(){
this.setTitle("标题");
this.setBounds(100,100,250,250);
this.setVisible(true);
this.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
public static void main(String [] args){
new Test();
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-03-30
添加一个监听器,重写windowClosing方法。才能关闭窗口。
第2个回答  2012-03-30
Frame的api文档里面
Frames are capable of generating the following types of WindowEvents:
WINDOW_CLOSING:
If the program doesn't explicitly hide or dispose the window while processing this event, the window close operation is canceled.
你可以在构建函数里面添加个监听,如下:
this.addWindowListener(new WindowListener(){
public void windowOpened(WindowEvent e) {}
public void windowClosing(WindowEvent e) {
System.exit(-1);
}
public void windowClosed(WindowEvent e) {}
public void windowIconified(WindowEvent e) {}
public void windowDeiconified(WindowEvent e) {}
public void windowActivated(WindowEvent e) {}
public void windowDeactivated(WindowEvent e) {}
});
第3个回答  2012-03-30
用Swing包就可以啊,awt包就好要写个监听方法滴
第4个回答  2012-03-30
setVisible(true); //设置是否可见
setDefaultCloseOperation(EXIT_ON_CLOSE);//关闭窗体

java生成的awt窗口怎么不能关闭???
添加windows事件(此事件方法有六个或者更多),在closing或者close中写System.exit(0);关闭窗口。可以直接继承windowsAdapter只要写其中的几个方法就行(比如你只要关闭方法就不用其他方法了)。

Java 弹出的消息框关不掉
一般情况下关不掉窗口有两种可能,一种是你写了一句意思是 do nothing on close(具体代码我忘了)一种是陷入了死循环失去响应了,比如说你这个e一直等于1,就死循环了。 我知道你什么意思,但是编译器不按你的意思做,他做完消息框后不等待而是继续下一个循环,说白了,程序不可控制了。

如何使java 中点击右上角的X就能把窗口关掉
把public void windowClosing(WindowEvent we){ this.dispose();} 改成:public void windowClosing(WindowEvent e){ System.exit(0);} 或者把你的main()方法改成这样:public static void main(String[] args){ F_register app=new F_register ();app.addWindowListener(new WindowAdapter(){ p...

AWT 编程时 ,窗口无法关闭
import java.awt.*;import java.awt.event.*;\/\/增加的引入public class frametest { public static void main(String args[]){ Frame frame1=new Frame();\/\/增加的代码 frame1.addWindowListener(new WindowAdapter(){ Override public void windowClosing(WindowEvent e) { System.exit(0);} })...

用java编写的图形用户界面运行后怎么关不掉
加上这段代码,为其添加关闭窗口事件的监听器 f.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent we) { \/\/ f.setVisible(false);System.exit(0);} });当然别忘了引入java.awt.event.*包

JAVA运行的窗口关不上,怎么解决
frm.addWindowListener(new WindowAdapter() { Override public void windowClosing(WindowEvent e) { System.exit(0);} });添加窗口监听器,还有推荐使用对应的Adapter比较好,因为实现接口的话要实现所有方法,Adapter实现了对应监听器接口的所有方法,只是方法体内为空,只需要调用需要的方法即可。

java小程序的窗口关闭问题
第二个不能正常关闭的原因是程序显示的窗口(private Frame f)的 windowClosing 事件没有和终止程序的语句挂钩。其实万事俱备只欠东风,因为程序里的 Interfaceforme 类是个截取 windowClosing 事件后马上终止程序的窗口事件监听器,所以在 go( ) 方法里实例化 Frame 之后的任何地方直接加一句 f.addWindow...

...没有停止调试的红色按钮呢,运行java理的awt出现窗口,如何关闭...
window --- show view --- console 你运行程序的console那边会有一个红色按钮的,如果没有的话你可以打开console右边的一个一模一样的图标的下拉框,选择自己的程序,如果是awt的话 应该会是一个 java application的条目。然后按钮就会变红了,就可以关闭了 - -写的有点啰嗦。。。

JAVA中怎么关闭一个窗口
java关闭窗口可以使用dispose(),只是该窗体在内存中所占有的资源得到了释放,而整个程序并没有因此而退出,如果整个程序要退出,在以java.awt中的frame为控件时,需手动添加:System.exit();而在以javax.Swing中的jFrame为控件时,一般不需要再写相应的事件,默认点击窗体上的小叉时,是隐藏,当然你可...

java 如何编写JFrame窗体右上角红色打叉关闭按钮的事件?
默认情况下,该值被设置为 HIDE_ON_CLOSE。更改此属性的值将导致激发属性更改事件,其属性名称为 "defaultCloseOperation"。注:当 Java 虚拟机 (VM) 中最后一个可显示窗口被释放后,虚拟机可能会终止。有关更多信息,请参阅 AWT Threading Issues。关闭窗口时触发的窗口事件:JFrame对象.addWindow...

相似回答