Java 中 WindowListener 介面的重要性是什麼?


處理 **WindowEvent** 的類需要實現此介面,並且可以使用 **addWindowListener()** 方法將此類的物件註冊到元件。

WindowListener 介面的方法

**WindowListener** 介面定義了 7 種處理視窗事件的方法

  • **void windowActivated(WindowEvent we)** − 當視窗被啟用時呼叫。
  • **void windowDeactivated(WindowEvent we)** − 當視窗被取消啟用時呼叫。
  • **void windowOpened(WindowEvent we)** − 當視窗開啟時呼叫。
  • **void windowClosed(WindowEvent we)** − 當視窗關閉時呼叫。
  • **void windowClosing(WindowEvent we)** − 當視窗正在關閉時呼叫。
  • **void windowIconified(WindowEvent we)** − 當視窗最小化時呼叫。
  • **void windowDeiconfied(WindowEvent we)** − 當視窗恢復時呼叫。

語法

public interface WindowListener extends EventListener

示例

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class WindowListenerTest extends JFrame implements WindowListener {
   JLabel l1,l2;
   JTextField t1;
   JPasswordField p1;
   JButton b1;
   public WindowListenerTest() {
      super("WindowListener Test");
      setLayout(new GridLayout(3,2));
      l1 = new JLabel("Name");
      l2 = new JLabel("Password");
      t1 = new JTextField(10);
      p1 = new JPasswordField(10);
      b1 = new JButton("Send");
      add(l1);
      add(t1);
      add(l2);
      add(p1);
      add(b1);
      addWindowListener(this);
   }
   public static void main(String args[]) {
      WindowListenerTest wlt = new WindowListenerTest();
      wlt.setSize(375, 250);
      wlt.setResizable(false);
      wlt.setLocationRelativeTo(null);
      wlt.setVisible(true);
   }
   public void windowClosing(WindowEvent we) {
      this.setVisible(false);
      System.exit(0);
   }
   public void windowActivated(WindowEvent we) {
   }
   public void windowDeactivated(WindowEvent we) {
   }
   public void windowOpened(WindowEvent we) {
   }
   public void windowClosed(WindowEvent we) {
   }
   public void windowIconified(WindowEvent we) {
   }
   public void windowDeiconified(WindowEvent we) {
   }
}

輸出


更新於: 2020-06-30

227 次檢視

啟動你的 職業生涯

透過完成課程獲得認證

開始學習
廣告