




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
GUI編程圖形用戶界面(GraphicUserInterface)本講重點GUI概述組件、容器布局管理器Java事件菜單組件GUI概述GUI是指采用圖形方式顯示計算機用戶操作界面。與早期的命令行界面相比,圖形界面對于用戶來說在視覺上更易于接受。GUI中包含了按鈕、下拉列表、菜單、文本字段等圖形元素,這些都是易于識別和操作的。Java語言提供了編寫GUI程序需要用到組件、容器、布局管理器和事件處理程序4種基本元素。組件組件是構成GUI的基本元素,如按鈕、標簽、文本框和復選框等,它是GUI的最小單位之一,組件里面不能在包含其他成分,創建組件的方法是生成一個組件對象,組件對象不能單獨顯示出來,只能將其放入容器中顯示出來。基本組件JButtonJButton是按鈕組件,構造一個按鈕對象可以使用如下方法
JButtonjb=newJButton(“OK”);JLabelJLabel是標簽組件,標簽是用來顯示文本內容的,構造一個按鈕對象可以使用如下方法
JLabeljl=newJLabel(“你好”);容器容器是一種用于包含組件的對象。組件必須放到容器對象中。容器可以容納其他組件和容器。框架和面板是常用的容器。常用容器JFrameJFrame是框架容器,它有邊框和標題欄。
JFramejf=newJFrame(“標題”);JPanelJPanel是面板容器,可以使用面板組合基本組件形成復雜界面。JPaneljp=newJPanel();布局管理器當組件添加到容器中時,布局管理器控制組件在容器中的位置。FlowLayoutBorderLayoutCardLayoutGridLayout事件處理程序當組件上發生事件時,需要有相應的程序來處理,事件處理程序就是用來處理組件上發生的事件。創建GUI程序創建一個GUI程序的基本步驟如下:(1)創建一個容納GUI組件的容器類。例如,創建JFrame類或子類作為基本容器。(2)如果一個容器不使用默認的布局管理器,則為它選擇一個新的布局管理器。(3)創建組件,并將它們添加到容器中。(4)創建一些“偵聽者”對象,檢測并響應每一個GUI組件所被期望的事件。并將對應的組件注冊這些偵聽者。Java事件事件處理模型行為事件鼠標事件鍵盤事件事件處理模型事件處理模型由3個組成部分:事件源、事件對象和事件監聽者。事件源表示事件初始發生的位置。事件對象包含描述事件的信息。事件監聽者表示關注、接受事件的對象。事件處理模型Java的事件處理機制中引入了委托事件模型,不同的事件由不同的監聽器處理,如圖所示的是行為事件的處理模型。事件源(按鈕jb)注冊:jb.addActionListener(監聽者對象(l))監聽者(類lis)publicvoidactionPerformed(ActionEvente)ActionEvent事件觸發事件調用并傳遞參數注冊行為事件行為事件是ActionEvent事件。在一個組件上單擊鼠標時就會產生行為事件。StringgetActionCommand()Java中提供的行為事件的監聽接口ActionListeneractionPerformed(ActionEvent
e)鼠標事件在一個組件上按下、釋放、點擊、移動、拖動鼠標時就會產生鼠標事件。JAVA中鼠標事件是MouseEventJava中提供的處理鼠標事件的監聽接口MouseListener和MouseMotionListenerMouseEvent事件getX();getY();isPopupTrigger();MouseListener接口mouseClicked(MouseEvente) 鼠標單擊mousePressed(MouseEvente) 鼠標按下mouseReleased(MouseEvente) 鼠標釋放mouseEntered(MouseEvente) 鼠標進入mouseExited(MouseEvente) 鼠標移出MouseMotionListener接口mouseDragged(MouseEvente) 鼠標拖拽mouseMoved(MouseEvente) 鼠標移動鍵盤事件當按下、釋放一個鍵或者在一個組件上打字,就會激發鍵盤事件。JAVA中鍵盤事件是KeyEventJAVA提供鍵盤監聽器接口KeyListener鍵盤事件KeyEvent事件
getKeyChar()KeyListener接口
KeyPressed(KeyEvente) KeyReleased(KeyEvente) KeyTyped(KeyEvente)事件小結行為事件ActionEvent的監聽接口是ActionListener鼠標事件MouseEvent的監聽接口是MouseListener和MouseMotionListener鍵盤事件KeyEvent的監聽器接口是KeyListener菜單組件菜單組件是比較特殊的一類,它包括菜單欄組件(JMenuBar)、菜單組件(JMenu)和菜單項(JMenuItem)3部分。通常,JMenuBar中包含一個或者多個JMenu,每個JMenu又可以包含一個或者多個JMenuItem。在JFrame框架上創建菜單的一般過程(1)首先創建JMenuBar對象,然后創建JMenu對象,最后產生JMenuItem對象;(2)將JMenuItem對象添加到JMenu對象之上,再將JMenu對象添加到JMenuBar對象中,最后將JMenuBar掛到JFrame窗口上;(3)將各菜單項注冊給實現了ActionListener接口的監聽器;(4)為監聽器定義actionPerformed(ActionEvente)方法,在該方法中調用e.getActionCommand()來判斷用戶單擊的菜單子項,并完成相應的操作。快捷菜單JPopupMenu表示快捷菜單在鼠標右鍵釋放時彈出快捷菜單show(Component
invoker,int
x,int
y)本講小結事件模型常用的事件ActionEvent事件、鼠標事件、鍵盤事件容器組件JFrame、JPanel布局管理器FLowLayout、BorderLayout、CardL
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 禮儀培訓考試試題及答案
- 宋朝考試題目及答案
- 智能能源管理系統初步設計評估報告2025
- 少兒英語全真試題及答案
- 2025年智能家居可穿戴醫療設備市場增長趨勢與用戶需求分析報告
- 弱電面試題目及答案
- 江西省上饒2024-2025學年初三第一次診斷性英語試題含答案
- 江蘇省淮安市淮陰區開明中學2025年初三下學期聯考期末試卷英語試題含答案
- 電商數字營銷的技術提升試題及答案
- 聚焦2025年:醫療器械售后服務市場前景分析與服務質量提升策略研究報告
- 放射科質量管理制度
- 科研助理筆試題庫及答案
- 產品上市計劃
- CHINET2024年全年細菌耐藥監測結果
- 藥物臨床試驗質量管理規范解讀
- 膀胱癌健康宣教課件
- X線腰椎臨床意義
- 零星工程框架協議書范本
- 綻放的梨花(2024年山東濱州中考語文試卷記敘文閱讀試題)
- 2024-2025學年人教版英語七年級下冊Unit 5 Here and now Section B 1a - 1d 教案
- 中國銀行課件模板7
評論
0/150
提交評論