教育路上

全國站>Java>圖形界面>java事件適配器
學員需求

java事件適配器

摘要:java 事件 適配器 ,JDK 提供了 一些適配器類,它們是監聽器接口的默認實現類,這些實現類中實現了接口的所有方法,但方法 中沒有任何代碼。。以下是我們為大家整理的,相信大家閱讀完后肯定有了自己的選擇吧。

2022-12-02 16:13網絡推薦

發布時間:
2022-12-02 16:13
信息來源:
網絡推薦
瀏覽次數:
483
java事件適配器

例 11-2 中的 MyWindowListener 類實現 WindowListener 接口后,需要實現接口中定義的 7

個方法,然而在程序中需要用到的只有 windowClosing()一個方法,其他六個方法都是空實現,沒有

發揮任何作用,這樣代碼的編寫明顯是一種多余但又必需的工作。針對這樣的問題,JDK 提供了

一些適配器類,它們是監聽器接口的默認實現類,這些實現類中實現了接口的所有方法,但方法

中沒有任何代碼。程序可以通過繼承適配器類來達到實現監聽器接口的目的,接下來通過繼承適

配器類來實現同例 11 -2 相同的功能,如例 11-3 所示。

例 11-3 Example03.javaimport java.awt.*;

import java.awt.event.*;

public class Example03 {

public static void main(String[] args) {

// 建立新窗體

Frame f = new Frame("我的窗體!");

// 設置窗體的寬和高

f.setSize(400, 300);

// 設置窗體的出現的位置

f.setLocation(300, 200);

// 設置窗體可見

f.setVisible(true);

// 為窗口組件注冊監聽器

f.addWindowListener(new MyWindowListener());

}

}

// 繼承 WindowAdapter 類,重寫 windowClosing()方法

class MyWindowListener extends WindowAdapter {

public void windowClosing(WindowEvent e) {

Window window = (Window) e.getComponent();

window.dispose();

}

}

例 11-3 實現了和例 11-2 相同的功能。定義的 MyWindowListener 類繼承了適配器類

WindowAdapter,由于實現的功能是關閉窗口,因此只需要對 windowClosing( )方法進行重寫即可。

需要注意的是,幾乎所有的監聽器接口都有對應的適配器類,通過繼承適配器類來實現監聽器接

口時,需要處理哪種事件,直接重寫該事件對應的方法即可。

11.2.3 用匿名內部類實現事件處理

例 11-3 通過繼承適配器類對事件源對象實現了監聽,但在實際開發中,為了代碼的簡潔,

經常通過匿名內部類來創建事件監聽器對象,針對所發生的事件進行處理。接下來通過案例來演

示如何為窗口添加一個具有點擊事件的按鈕,具體代碼如例 11-4 所示。

例 11-4 Example04.java

import java.awt.*;

import java.awt.event.*;

public class Example04 {

public static void main(String[] args) {

Frame f = new Frame("我的窗體!");

f.setSize(400, 300);

f.setLocation(300, 200);

f.setVisible(true);

Button btn = new Button("EXIT"); // 創建按鈕組件對象

f.add(btn); // 把按鈕對象加載到窗口上

// 用內部類的方式為按鈕組件注冊監聽器

btn.addMouseListener(new MouseAdapter() {

public void mouseClicked(MouseEvent e) {

System.exit(0);

}

});

}

}

編譯運行程序,生成的窗口如圖 11-8 所示.

from shengerguan

圖 11-8 例 11-4 運行結果

例 11-4 中,調用按鈕 btn 的 addMouseListener( )方法,并在該方法中以匿名內部

類的方式給按鈕注冊了一個鼠標事件監聽器。由于只需要監聽按鈕的點擊事件,因此使用了

MouseAdapter 適配器類,重寫了 mouseClicked()方法,當按鈕被點擊時,會把點擊事件作為對

象傳遞給事件監聽器,做出退出程序的處理。

上一篇:
java AWT 事件處理
下一篇:
java窗體事件
標簽: 適配器
網友評論
發布評論

訪客的評論 2023/05/28 23:34

文中描述的是準確的嗎,如何報名!

相關推薦
我也來發表評價關閉
我對該內容的評價:
0
評價500
驗證碼: 看不清 換一張
提交 (匿名發布,無須擔心別人知道您的身份)
學校免費發布信息關閉
我們審核后會盡快展示,如有圖片請發郵件到:edu63@foxmail.com

姓      名:

內      容:

手機號碼:

驗  證  碼:  換一張

確認提交
填寫需求信息關閉
我們會根據您的需求匹配并審核留言

姓      名:

意向城市:

留      言:

手機號碼:

驗  證  碼:  換一張

確認提交
糾錯補充本文信息關閉
非常感謝您幫助糾錯補充本文信息


 換一張

確認提交
美女裸体黄网站18禁免费看