java如何关闭某JFrame窗口,而不是退出整个程序!
public class login extends JFrame{
.
.
.
.
register.addActionListener(new AbstractAction() {
@Override
public void actionPerformed(ActionEvent e) {
new register("新用户注册"); //打开新的窗口
//这里写关闭窗口代码
}
});
} 展开
JFrame的关闭不像Frame,点关闭按钮自己会关闭,但是那样做不好.可以用setDefaultCloseOperation(int operation);
其中operation有以下几种
DO_NOTHING_ON_CLOSE(在 WindowConstants 中定义):不执行任何操作;要求程序在已注册的 WindowListener 对象的 windowClosing 方法中处理该操作。
HIDE_ON_CLOSE(在 WindowConstants 中定义):调用任意已注册的 WindowListener 对象后自动隐藏该窗体。
DISPOSE_ON_CLOSE(在 WindowConstants 中定义):调用任意已注册 WindowListener 的对象后自动隐藏并释放该窗体。
EXIT_ON_CLOSE(在 JFrame 中定义):使用 System exit 方法退出应用程序。仅在应用程序中使用。
默认情况下,该值被设置为 HIDE_ON_CLOSE。更改此属性的值将导致激发属性更改事件,其属性名称为 "defaultCloseOperation"。
销毁窗口可以用dispose()方法
dispose(); 方法用不了!提示不存在该类
题主你addActionListener那段代码写错了。
正确代码:
register.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
new register("新用户注册"); //打开新的窗口
//这里写关闭窗口代码
dispose();
}
});