窗口监听事件

窗口监听事件

package com.zishi.lesson03;

import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

public class TestWindow {
   public static void main(String[] args) {
       new WindowFrame();
  }
}

class WindowFrame extends Frame{
   public WindowFrame(){
       setBackground(Color.BLUE);
       setBounds(100,200,200,200);
       setVisible(true);
       //addWindowListener(new MyWindowListener());

       this.addWindowListener(
               //匿名内部类
               new WindowAdapter() {
                   @Override
                   public void windowOpened(WindowEvent e) {
                       System.out.println("windowOpened");
                  }
                   //关闭窗口
                   @Override
                   public void windowClosing(WindowEvent e) {
                       System.out.println("windowClosing");
                       System.exit(0);
                  }

                   @Override
                   public void windowClosed(WindowEvent e) {
                       super.windowClosed(e);
                  }

                   @Override
                   public void windowIconified(WindowEvent e) {
                       super.windowIconified(e);
                  }

                   @Override
                   public void windowDeiconified(WindowEvent e) {
                       super.windowDeiconified(e);
                  }
                   //激活窗口
                   @Override
                   public void windowActivated(WindowEvent e) {
                       WindowFrame source= (WindowFrame)  e.getSource();
                       source.setTitle("激活了");
                       System.out.println("windowActivated");
                  }

                   @Override
                   public void windowDeactivated(WindowEvent e) {
                       super.windowDeactivated(e);
                  }

                   @Override
                   public void windowStateChanged(WindowEvent e) {
                       super.windowStateChanged(e);
                  }

                   @Override
                   public void windowGainedFocus(WindowEvent e) {
                       super.windowGainedFocus(e);
                  }

                   @Override
                   public void windowLostFocus(WindowEvent e) {
                       super.windowLostFocus(e);
                  }
              }
      );

  }
//   class MyWindowListener extends WindowAdapter{
//       @Override
//       public void windowClosing(WindowEvent e) {
//           setVisible(false);//隐藏窗口,通过按钮隐藏当前窗口
//           System.exit(0);
//       }
//   }
}

 

C:\Users\onefat\AppData\Roaming\Typora\typora-user-images

posted @ 2021-08-13 17:46  子时未临  阅读(46)  评论(0编辑  收藏  举报