java如何实现关闭当前窗口?java怎么关闭窗体?

我们进行Java开发的时候,需要打开窗口,但是用不到的时候就需要将窗口关闭,提高工作效率,那java如何实现关闭当前窗口?接下来我们就来给大家讲解一下java内容关闭当前窗口的方法。

使用dispose(),只是该窗体在内存中所占有的资源得到了释放,而整个程序并没有因此而退出,如果整个程序要退出,在以java.awt中的frame为控件时,需手动添加:System.exit();

而在以javax.Swing中的jFrame为控件时,一般不需要再写相应的事件,默认点击窗体上的小叉时,是隐藏,当然你可更改其参数。

java怎么关闭窗体?

1.使用JFrame的enableEvents和processWindowEvent

//Frame1.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Frame1 extends JFrame
{
    public Frame1()
    {
        enableEvents(AWTEvent.WINDOW_EVENT_MASK);
        this.setSize(new Dimension(400, 300));
        this.setTitle("Frame1");
    }
    protected void processWindowEvent(WindowEvent e)
    {
        super.processWindowEvent(e);
        if (e.getID() == WindowEvent.WINDOW_CLOSING)
        {
            System.exit(0);
        }
    }
}

2.直接实现WindowListener接口

//Frame1.java
import java.awt.*;
import java.awt.event.*;
public class Frame1 extends Frame implements WindowListener
{
    public Frame1()
    {
        this.setSize(new Dimension(400, 300));
        this.setTitle("Frame1");
        this.addWindowListener(this);
    }
    public void windowClosing(WindowEvent windowEvent)
    {
        System.exit(0);
    }
    public void windowOpened(WindowEvent windowEvent)
    {}
    public void windowClosed(WindowEvent windowEvent)
    {}
    public void windowIconified(WindowEvent windowEvent)
    {}
    public void windowDeiconified(WindowEvent windowEvent)
    {}
    public void windowActivated(WindowEvent windowEvent)
    {}
    public void windowDeactivated(WindowEvent windowEvent)
    {}
}

3.直接继承窗体适配器WindowAdapter

//Frame1.java
import java.awt.*;
import java.awt.event.*;
public class Frame1 extends WindowAdapter
{
    public Frame1()
    {
        Frame f = new Frame();
        f.setSize(new Dimension(400, 300));
        f.setTitle("Frame1");
        f.addWindowListener(this);
        f.setVisible(true);
    }
    public static void main(String[] s)
    {
        new Frame1();
    }
    public void windowClosing(WindowEvent windowEvent)
    {
        System.exit(0);
    }
}

4.间接继承窗体适配器WindowAdapter

//Frame1.java
import java.awt.*;
import java.awt.event.*;
public class Frame1 extends Frame
{
    public Frame1()
    {
        this.setSize(new Dimension(400, 300));
        this.setTitle("Frame1");
        this.addWindowListener(new winAdapter());
        this.setVisible(true);
    }
    public static void main(String[] s)
    {
        new Frame1();
    }
}
class winAdapter extends WindowAdapter
{
    public void windowClosing(WindowEvent windowEvent)
    {
        System.exit(0);
    }
}

5.间接实现WindowListener接口

//Frame1.java
import java.awt.*;
import java.awt.event.*;
public class Frame1 extends Frame
{
    public Frame1()
    {
        this.setSize(new Dimension(400, 300));
        this.setTitle("Frame1");
        this.addWindowListener(new winEventHandle());
        this.setVisible(true);
    }
    public static void main(String[] s)
    {
        new Frame1();
    }
}
class winEventHandle implements WindowListener
{
    public void windowClosing(WindowEvent windowEvent)
    {
        System.exit(0);
    }
    public void windowOpened(WindowEvent windowEvent)
    {}
    public void windowClosed(WindowEvent windowEvent)
    {}
    public void windowIconified(WindowEvent windowEvent)
    {}
    public void windowDeiconified(WindowEvent windowEvent)
    {}
    public void windowActivated(WindowEvent windowEvent)
    {}
    public void windowDeactivated(WindowEvent windowEvent)
    {}
}

6.使用Inner Class

//Frame1.java
import java.awt.*;
import java.awt.event.*;
public class Frame1
{
    public Frame1()
    {
        Frame f = new Frame();
        f.addWindowListener(new WindowAdapter()
        {
            public void windowClosing(WindowEvent e)
            {
                System.exit(0);
            }
        });
        f.setSize(new Dimension(400, 300));
        f.setVisible(true);
    }
    public static void main(String[] s)
    {
        new Frame1();
    }
}

Jframe的关闭方法:

setDefaultCloseOperation(EXIT_ON_CLOSE);

frame的关闭方法如下:

this.addWindowListener(new java.awt.event.WindowAdapter()
{
    public void windowClosing(java.awt.event.WindowEvent e)
    {
        System.exit(0);
    }
});

Java关闭窗体的方法有以上六种,大家可以随便选择一种将窗体关闭就好了!最后大家如果想要了解更多java入门知识,敬请关注奇Q工具网。

推荐阅读:

javabean是一个什么组件?开发环境是什么?

java课程培训怎么样?java培训机构如何选?

java架构师学习资料哪里找?需要学什么?

推荐内容