Java Swing界面編程(21)---事件處理:窗口事件


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);
	}
}

程序截圖:

結果截圖:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM