当我点击一帧的关闭(X)按钮时,它会关闭所有打开的帧。
我使用以下代码关闭框架
Frame f2 = new Frame();
f2.setVisible(true);
f2.setLayout(null);
f2.setSize(500,500);
f2.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent w)
{
System.exit(0);
}
});
System.exit(0)
使整个申请结束。
我怎样才能只关闭一个帧?
答案 0 :(得分:2)
System.exit();
导致Java VM完全终止。
因此,您需要使用导致JFrame窗口被操作系统销毁和清理的JFrame.dispose();
。
Frame f2 = new Frame();
f2.setVisible(true);
f2.setLayout(null);
f2.setSize(500,500);
f2.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent w)
{
f2.dispose();
}
});
此post
的说明答案 1 :(得分:1)
您也可以使用dispose()
:
import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class Work {
public static void main(String[] args) {
Frame f2 = new Frame();
f2.setVisible(true);
f2.setLayout(null);
f2.setSize(500, 500);
f2.
f2.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent w) {
w.getWindow().dispose();
}
});
}
}
查看更多here。