日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

core java 8~9(GUI AWT事件处理机制)

發布時間:2023/12/10 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 core java 8~9(GUI AWT事件处理机制) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

MODULE 8 GUIs
--------------------------------
GUI中的包:
java.awt.*;
javax.swing.*;
java.awt.event.*;


要求:
1)了解GUI的開發流程;
2)掌握常用的布局管理器

開發GUI圖形界面的步驟
-------------------------------
1.選擇容器
1)Frame容器
有縮小/最大化/關閉等按鈕,頂層容器
2)Dialog對話框
通常依賴于容器,不單獨出現
3)Applet 依賴于瀏覽器的支持,已淘汰
4)Panel 輕量級小容器
沒有縮小/最大化/關閉等按鈕,通常一個大的容器需要設置多種排列風格時,將大容器切割成多個小容器,每個小容器添加自己獨有的風格。沒有滾動條
5)ScrollPane 帶有滾動條的小容器

2.給容器設置布局管理器
布局管理器決定了容器組件的排列風格
1)setLayout(布局管理器) 設置布局管理器
2)可以通過組件的setLocation() setBounds()等方法設置組件在容器當中的位置,大小,以及和容器的邊界等
3)所有容器都有默認的布局管理器
Window 默認為BorderLayout,Frame容器與之相同
Panel 默認為FlowLayout

3.往容器中添加組件
1)創建組件對象
Button b=new Button("Add");
2)向容器中添加組件
add(b);

4.創建事件監聽器
給每個組件添加相應的時間處理代碼
westBtn.addActionListener(new ActionListener(){
public void Performed(ActionEvent e){
centerArea.setText(centerArea.getText()+westTxt.getText()+"\n");
westTxt.setText("");
}
});


創建容器的兩種方式
1)將JFrame作為成員變量
2)可以繼承JFrame


常見的布局管理器
------------------------
1.flowlayout 流式布局管理
組件按行排列,一行排不下或窗口改變會自動換行排列

2.BorderLayout
將容器分為五大區域:
BorderLayout.CENTER
BorderLayout.EAST
BorderLayout.WEST
BorderLayout.SOUTH
BorderLayout.NORTH
每個區域只能放一個組件,且該組件充滿整個區域
若改變窗口大小,只有CENTER區域會跟隨改變,其他區域不變

練習:BorderLayoutEx.java


3.GridLayout 網格布局管理器
將容器劃分為若干行若干列大小相同的網格,每個網格只允許放一個組件,且該組件充滿網格
對組件調整大小無意義

4.CardLayout 卡片狀布局管理器
設置多個卡片,每個卡片只能放一個組件,且該組件充滿整個區域

JFC
提供了通用的類庫開發圖形界面,操作系統無關

組成:AWT Java2D Accessebility Drag and Drop, Swing


MODULE 9 AWT事件處理機制
--------------------------------
按鈕 點擊 產生響應
事件源(觸發)點擊事件(給)事件監聽器===> 執行響應代碼

三要素:
Event Source:事件源
操作的組件,如按鈕等,會產生事件
Event Object:事件對象
組件身上觸發的事件對象,如鼠標單擊,將動作包裝成對象
Event Listener:事件監聽器
負責對不同事件源發來的事件進行響應

例:


分析:
1)事件源要維護一個監聽器列表,產生的事件傳遞個這些監聽器
2)事件對象身上要攜帶有事件源的信息
3)事件監聽器要知道事件源,并根據不同的事件源做不同的響應


情緒模型
----------------
女孩 產生 情緒事件 發送給 男孩子們

Girl 事件源
1)負責產生情緒事件happy()/sad(),把情緒傳遞給所有對她感興趣的男孩子
2)要維護一個男孩子列表,記錄所有對她感興趣的男孩
3)提供相應的方法允許注冊監聽器或刪除監聽器

EmotionEvent 事件對象
情緒事件要攜帶有Girl的信息

Boy 監聽器
對不同的Girl發來的情緒事件作出不同的反應

?

適配器Adapter
-----------------------------------
設計原因:
采用實現事件監聽器接口的 方式編寫事件處理代碼時 ,必須對該接口中的所有事件提出實現(很多事件不會用到)。考慮簡化該方式:適配器類


原有的:MouseListener接口:

?

轉載于:https://www.cnblogs.com/jinhuazhe2013/p/4148006.html

總結

以上是生活随笔為你收集整理的core java 8~9(GUI AWT事件处理机制)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。