监听器中GUI的理解

文章目录

  • 前言
  • 一、Panel窗口关闭Demo
  • 总结


前言

比如登录拦截:用户登录后,会被拦截掉。就可以用监听器来处理。

一、Panel窗口关闭Demo

先创建一个窗口,发现点击关闭后,关闭不掉,就要添加监听事件:
监听器中GUI的理解_第1张图片

public class TestPanel1 {
    public static void main(String[] args) {
        Frame frame = new Frame("中秋节快乐");//新建一个窗口
        Panel panel = new Panel(null);//新建一个面板
        frame.setLayout(null);//设置窗体的布局
        frame.setBounds(300, 300, 500, 500);
        frame.setBackground(new Color(0, 0, 255));

        panel.setBounds(50, 50, 300, 300);
        panel.setBackground(new Color(0, 255, 0));

        frame.add(panel);
        frame.setVisible(true);
//        监听事件,监听关闭事件:方式一:
        /*
frame.addWindowListener(new WindowListener() {
    @Override
    public void windowOpened(WindowEvent e) {
        System.out.println("打开");
    }

    @Override
    public void windowClosing(WindowEvent e) {
        System.out.println("关闭ing");
        System.exit(0);
    }

    @Override
    public void windowClosed(WindowEvent e) {
        System.out.println("关闭ed");

    }

    @Override
    public void windowIconified(WindowEvent e) {

    }

    @Override
    public void windowDeiconified(WindowEvent e) {

    }

    @Override
    public void windowActivated(WindowEvent e) {
        System.out.println("激活");
    }

    @Override
    public void windowDeactivated(WindowEvent e) {
        System.out.println("未激活");
    }
});


         */
         //方式二:使用适配器模式,
        frame.addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosing(WindowEvent e) {
                System.out.println("关闭窗口");
                System.exit(0);
            }
        });
    }
}

总结

Exit(0)和exit(1)的区别:一个是正常终止,一个是非正常。
适配器模式,抽象类继承了接口,可以选择重写其中的方法,不用实现全部的方法。

你可能感兴趣的:(javaWeb,java,android,开发语言)