A. java中如何关闭当前窗口
使用dispose(),只是该窗体在内存中所占有的资源得到了释放,而整个程序并没有因此而退专出,如果属整个程序要退出,在以java.awt中的frame为控件时,需手动添加:System.exit();
而在以javax.Swing中的jFrame为控件时,一般不需要再写相应的事件,默认点击窗体上的小叉时,是隐藏,当然你可更改其参数。
B. java swing:关闭当前Frame
setVisible(false); //隐藏当前窗口
dispose();//销毁当前窗口
一般用隐藏
C. java关闭当前窗口代码
方法一:
类 JFrame
javax.swing.JFrame
JFrame中的方法void setDefaultCloseOperation(int)可以设置
以下为改方法的用法:
setDefaultCloseOperation
public void setDefaultCloseOperation(int operation)设置用户在此窗体上发起
"close" 时默认执行的操作。必须指定以下选项之一:
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"。
注:当 Java 虚拟机 (VM) 中最后一个可显示窗口被释放后,虚拟机可能会终止
要实现你说的,应该采用
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
方法二:
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class Test extends JFrame {
public Test(){
this.setTitle("title");
this.setSize(300,200);
this.setLocation(100,100);
//设置关闭时什么也不做
this.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
//监听关闭按钮的点击操作
this.addWindowListener(new WindowAdapter(){
//new 一个WindowAdapter 类 重写windowClosing方法
//WindowAdapter是个适配器类 具体看jdk的帮助文档
public void windowClosing(WindowEvent e) {
//这里写对话框
if(JOptionPane.showConfirmDialog(null,
"退出","提
示",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE)==JOptionPane.YES_OPTION){
System.exit(0);
}
}
});
this.setVisible(true);
}
public static void main(String[] args) {
new Test();
}
}
D. java如何关闭JFrame
package applet;
import java.awt.*;
import java.awt.event.*;
public class App20_1 extends Frame implements ActionListener
{
public static void main(String args[])
{
App20_1 frm=new App20_1();
Button btn=new Button("Draw");
BorderLayout br=new BorderLayout();
frm.setTitle("drawing example");
frm.setLayout(br);
frm.setSize(200,150);frm.add(btn,br.SOUTH);
btn.addActionListener(frm);
frm.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
Graphics g=getGraphics();
g.drawRect(100,50,70,55);
}
}
不太清楚的情况下,不要轻易尝试static修饰类型,点击窗口关闭按钮不能关闭时你没有没写关闭的响应代码,添加一个frm.addwindowlistener然后重写里面的关闭代码就可以了
E. 如何在java程序中,当点击一个按钮后,关闭当前窗口,开启一个新的窗口。
JButtonbtn=newJButton(newAbstractAction("关闭并打开"){@(ActionEvente){oldFrame.dispose();//关闭并销毁,无需销毁可采用oldFrame.setVisible(false);newFrame.setVisible(true);//打开新窗口}});