Java Swing界面编程(21)-事件处理:窗体事件
Java Swing界面编程(21)---事件处理:窗体事件
单单只有监听器是不够的,还需要在组件使用时注册监听,这样才能处理,直接使用窗体的addWindowListener(监听对象)方法即可注册事件监听
程序截图:
WindowLIstener是专门处理窗体的事件监听窗口,一个窗体的所有变化,如窗口的打开、关闭等都可以使用这个接口进行监听。
实现WIndowListener:
package com.beyole.util; import java.awt.event.WindowEvent; import java.awt.event.WindowListener; public class MyWindowEventHandle implements WindowListener { @Override public void windowOpened(WindowEvent e) { System.out.println("windowOpened--->窗口被打开"); } @Override public void windowClosing(WindowEvent e) { System.out.println("windowClosing--->窗口关闭"); } @Override public void windowClosed(WindowEvent e) { System.out.println("windowClosed--->窗口被关闭"); } @Override public void windowIconified(WindowEvent e) { System.out.println("windowIconified--->窗口最小化"); } @Override public void windowDeiconified(WindowEvent e) { System.out.println("windowDeiconfied--->窗口从最小化恢复"); } @Override public void windowActivated(WindowEvent e) { System.out.println("windowActivated--->窗口被选中"); } @Override public void windowDeactivated(WindowEvent e) { System.out.println("windowDeactivated--->取消窗口被选中"); } }
单单只有监听器是不够的,还需要在组件使用时注册监听,这样才能处理,直接使用窗体的addWindowListener(监听对象)方法即可注册事件监听
package com.beyole.util; import java.awt.Color; import javax.swing.JFrame; public class MyWindowEventFrame01 { public static void main(String[] args) { JFrame frame=new JFrame("Crystal"); frame.addWindowListener(new MyWindowEventHandle()); frame.setSize(300, 160); frame.setBackground(Color.WHITE); frame.setLocation(300, 200); frame.setVisible(true); } }
程序截图:
结果截图: