版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
目錄第一章Java與程序邏輯第二章面向?qū)ο蟪绦蛟O(shè)計(jì)基礎(chǔ)第三章面向?qū)ο蠡咎匦缘谒恼鲁S脤?duì)象使用第五章異常處理第六章I/O操作第七章多線程編程第八章Java的GUI可視界面編程第八章Java的GUI可視界面編程21任務(wù)8.1創(chuàng)建窗體任務(wù)8.2在窗體上布局控件任務(wù)8.3
給Swing組件添加事件3任務(wù)8.1創(chuàng)建窗體4情境描述123問(wèn)題分析解決方案知識(shí)總結(jié)5應(yīng)用實(shí)踐8.1.1情境描述針對(duì)企業(yè)工資管理而言,圖形化、可視化的操作已是信息管理軟件開(kāi)發(fā)主流。如何將現(xiàn)有的工資管理系統(tǒng)移植到窗體圖形界面中成為Tom需要考慮的首要問(wèn)題,針對(duì)系統(tǒng)的主菜單程序進(jìn)行圖形化操作,他需要完成以下任務(wù):1)利用Java創(chuàng)建窗體對(duì)象2)在窗體上繪制組建3)在窗體上添加菜單8.1.2問(wèn)題分析現(xiàn)有的工資管理系統(tǒng)主界面主要是采取字符行界面輸出而來(lái),字符行界面的缺點(diǎn)在于人機(jī)交互能力不強(qiáng),所有的操作都必須通過(guò)鍵盤完成,用戶操作難度大。Java提供awt及swing組件,有效的解決了圖形化界面的設(shè)計(jì)問(wèn)題,swing組件提供的JFrame,JMenu等組件,能夠有效地解決用戶所需。8.1.3解決方案
1、打開(kāi)Eclipse開(kāi)發(fā)環(huán)境。2、新建包c(diǎn)om.esms.view。3、新建環(huán)境參數(shù)控制類。4、從JFrame類派生新建創(chuàng)建對(duì)象FramMain.java。5、在窗體中添加成員。6、在窗體構(gòu)造函數(shù)中初始化組件并布局。7、創(chuàng)建主函數(shù)測(cè)試主窗體效果。8.1.4知識(shí)總結(jié)1.GUI界面介紹圖形用戶界面(GraphicalUserInterface,GUI)是借助菜單、按鈕等標(biāo)準(zhǔn)界面元素和鼠標(biāo)操作,幫助用戶方便向計(jì)算機(jī)系統(tǒng)發(fā)出指令,啟動(dòng)操作,并將系統(tǒng)運(yùn)行的結(jié)果同樣以圖形方式顯示給用戶。Java提供的圖形用戶界面包有兩個(gè),即java.awt包和javax.swing包。8.1.4知識(shí)總結(jié)2.Swing由于Swing不依賴于任何本地代碼,所以采用Swing編寫的程序具有100%的可移植性,不需要進(jìn)行代碼的任何改動(dòng)即可運(yùn)行于所有的平臺(tái)。所有的Swing組件都包含在以javax開(kāi)頭的Java擴(kuò)展包javax.swing包中。程序中用到了該包中的類,需要在源程序前面通過(guò)import語(yǔ)言引入對(duì)應(yīng)的類庫(kù)。8.1.4知識(shí)總結(jié)3.JFrame容器是一種能夠容納其他組件或容器的特殊組件。每個(gè)GUI應(yīng)用程序必須至少包含一個(gè)頂層容器組件。窗體JFrame繼承于AWT的Frame類,主要用于設(shè)計(jì)類似于Windows系統(tǒng)中的窗口形式的應(yīng)用程序。它可以擁有標(biāo)題、邊框、菜單,而且允許調(diào)整大小,其外觀依賴于所使用的操作系統(tǒng)。8.1.4知識(shí)總結(jié)4.Swing菜單菜單是GUI中非常重要的一部分。它顯示一個(gè)項(xiàng)目列表,指明用戶可以執(zhí)行的各項(xiàng)操作,當(dāng)用戶選擇或點(diǎn)擊它的某個(gè)選項(xiàng)時(shí),會(huì)打開(kāi)另外的一個(gè)列表或子菜單。每個(gè)菜單項(xiàng)都有一些關(guān)聯(lián)的操作。Swing菜單由菜單欄(JMenuBar)、菜單(JMenu)和菜單項(xiàng)(JMenuItem)構(gòu)成。JMenuBar是JMenu和JMenuItem的父類,可以將JMenu和JMenuItem對(duì)象添加到JMenuBar上。8.1.4知識(shí)總結(jié)4.Swing菜單創(chuàng)建菜單的基本步驟如下。(1)創(chuàng)建菜單條(JMenuBar)(2)創(chuàng)建菜單(JMenu),加入到相應(yīng)菜單條(3)創(chuàng)建菜單項(xiàng)(JMenuItem),加入到相應(yīng)菜單(4)使菜單條依附于擁有它的對(duì)象,即添加菜單條到頂層容器8.1.5應(yīng)用實(shí)踐配合Swing窗體JFrame和菜單對(duì)象,創(chuàng)建程序?qū)崿F(xiàn)用戶界面,如圖8-4所示效果。任務(wù)8.2在窗體上布局控件4情境描述123問(wèn)題分析解決方案知識(shí)總結(jié)5應(yīng)用實(shí)踐8.2.1情境描述針對(duì)工資管理系統(tǒng)而言,Tom成功的實(shí)現(xiàn)了主菜單的可視化,緊接著他需要針對(duì)系統(tǒng)操作界面,例如員工的管理界面進(jìn)行圖形化,需要完成以下任務(wù):1)在窗體上添加Swing組件2)將Swing組件合理布局到窗體上8.2.2問(wèn)題分析界面圖形化操作主要通過(guò)在窗體方式組件及組件的布局構(gòu)成,java語(yǔ)言通過(guò)在JFrame上放置JPanel,JTextField,JLabel等組件的形式實(shí)現(xiàn),同時(shí)通過(guò)適當(dāng)?shù)牟季址绞?,?shí)現(xiàn)界面的合理展現(xiàn)。8.2.3解決方案
1、打開(kāi)Eclipse。2、在com.esms.view下創(chuàng)建添加A類員工的界面AddEmployeeA.Java。3、新建A類員工修改的窗體EditEmployeeA.java。4、編寫刪除A類員工的刪除窗體DeleteEmployeeA.java。5、測(cè)試三個(gè)操作界面。8.2.4知識(shí)總結(jié)1.Swing組件(1)JPanel面板JPanel是一種經(jīng)常使用的中間層容器。它沒(méi)有標(biāo)題和邊框,默認(rèn)屬性為透明,也沒(méi)有背景色彩,即是一種看不見(jiàn)的中間層容器??梢允褂胊dd方法在JPanel中放置按鈕、文本框等組件。使用時(shí),需要將它添加到頂層容器或其他中間容器中。(2)JLabel標(biāo)簽是顯示文本和圖片的一個(gè)靜態(tài)區(qū)域,用于只能查看而不能修改其內(nèi)容,但通過(guò)代碼可以修改其內(nèi)容。8.2.4知識(shí)總結(jié)1.Swing組件(3)JButton按鈕類用來(lái)創(chuàng)建按鈕,在按鈕上可以設(shè)置圖標(biāo)。按鈕JButton被廣泛用于用戶輸入,當(dāng)用戶用鼠標(biāo)單擊按鈕時(shí),系統(tǒng)會(huì)自動(dòng)執(zhí)行與該按鈕相聯(lián)系的事件處理程序,從而完成預(yù)先指定的功能。(4)JTextFieldJava的文本框有單行文本框JTextField、密碼文本框JPasswordField、多行文本框JTextArea等多種。8.2.4知識(shí)總結(jié)1.Swing組件(5)JCheckBox用于復(fù)選框的實(shí)現(xiàn),復(fù)選框是一個(gè)可以被選定和取消選定的項(xiàng),它將其狀態(tài)顯示給用戶。(6)JRadioButton組件實(shí)現(xiàn)一個(gè)單選按鈕,此按鈕項(xiàng)可被選擇或取消選擇,并可為用戶顯示其狀態(tài)。它與ButtonGroup對(duì)象配合使用可創(chuàng)建一組按鈕,一次只能選擇其中的一個(gè)按鈕。8.2.4知識(shí)總結(jié)2.布置管理布局管理器可以用來(lái)管理各種組件在容器中的放置狀態(tài),它會(huì)根據(jù)平臺(tái)來(lái)調(diào)整組件的大小,具有很好的平臺(tái)無(wú)關(guān)性。每個(gè)容器都有一類布局管理器,當(dāng)容器對(duì)某個(gè)組件進(jìn)行定位或判斷時(shí),就會(huì)調(diào)用其對(duì)應(yīng)的布局管理器,而且可以通過(guò)setLayout()方法為容器設(shè)置新的布局。8.2.4知識(shí)總結(jié)2.布置管理(1)FlowLayout流布局管理器組件FlowLayout提供了一種非常簡(jiǎn)單的布局,用來(lái)將一群組件安排在同一行,由左向右排列,并維持組件的大小,當(dāng)此行已經(jīng)排滿時(shí),它會(huì)將剩余的組件自動(dòng)排列到下一行,而各行的組件會(huì)向中間對(duì)齊。8.2.4知識(shí)總結(jié)2.布置管理(2)BorderLayout邊界式的布局,它把一個(gè)容器分為東、南、西、北、中五個(gè)部分,分別為BorderLayout.EAST、BorderLayout.SOUTH、BorderLayout.WEST、BorderLayout.NORTH、BorderLayout.CENTER,若沒(méi)有指明組件放置的位置,則表明默認(rèn)的“CENTER”。8.2.4知識(shí)總結(jié)2.布置管理(3)GridLayout網(wǎng)格布局GridLayout是將容器空間平均分割成若干行乘若干列的網(wǎng)格,每個(gè)格放一個(gè)組件。各組件按照從上到下,從左到右的順序排列。GridLayout布局中每個(gè)網(wǎng)格都是大小相同,并且強(qiáng)制組件與網(wǎng)格大小相同。8.2.5應(yīng)用實(shí)踐編寫一個(gè)名片管理程序,實(shí)現(xiàn)圖形界面如圖所示。其中可以使用布局管理器來(lái)布局,也可以通過(guò)添加不同的面板,實(shí)現(xiàn)布局。任務(wù)8.3給Swing組件添加事件4情境描述123問(wèn)題分析解決方案知識(shí)總結(jié)5應(yīng)用實(shí)踐8.3.1情境描述Tom在完成了對(duì)工資管理系統(tǒng)的主窗體及新建窗體之后,但是,主界面的菜單沒(méi)有響應(yīng)事件,同時(shí)功能窗體也沒(méi)有響應(yīng)事件。為此他需要解決以下任務(wù):添加菜單的點(diǎn)擊事件添加按鈕的響應(yīng)事件8.3.2問(wèn)題分析在window環(huán)境下,組件執(zhí)行的功能是通過(guò)事件來(lái)完成的,Java語(yǔ)言這對(duì)按鈕事件通過(guò)ActionEvent及ActionListener來(lái)解決,執(zhí)行的方法為ActionPerform。8.3.3解決方案1、打開(kāi)Eclipse。2、修改FrameMaim.java,添加菜單的事件處理程序。3、添加菜單事件監(jiān)聽(tīng)。4、運(yùn)行測(cè)試菜單點(diǎn)擊事件。5、為AddEmployeeA的添加按鈕綁定點(diǎn)擊事件。6、為EditEmployeeA的查詢按鈕添加事件。7、在DeleteEmployeeA.java類中添加刪除事件。8、運(yùn)行程序。8.3.3解決方案8.3.4知識(shí)總結(jié)1.事件處理機(jī)制如果希望能對(duì)各種事件做出反應(yīng),要編寫一個(gè)或多個(gè)事件處理方法,當(dāng)程序監(jiān)聽(tīng)到事件發(fā)生后,就可以調(diào)用事件處理方法來(lái)處理了。(1)事件(Event):用戶對(duì)界面操作的描述,以類的形式出現(xiàn)。例如鼠標(biāo)操作對(duì)應(yīng)的事件MouseEvent。在Java的事件處理過(guò)程中,主要涉及3類對(duì)象。(2)事件源(EventSource):產(chǎn)生事件的組件,如按鈕Button。(3)事件監(jiān)聽(tīng)者(EventListener):接收事件并對(duì)其進(jìn)行處理的對(duì)象。8.3.4知識(shí)總結(jié)2.事件類Java中的事件處理是面向?qū)ο蟮?,所有事件都是從java.util包中的EventObject類擴(kuò)展而來(lái)的。EventObject有一個(gè)子類AWTEvent,它是所有AWT事件的父類EventObjectAWTEventActionEventAdjustmentEventComponentEventItemEventTextEventContainerEventFocusEventInputEventPaintEventWindowEventKeyEventMouseEvent8.3.4知識(shí)總結(jié)3.事件監(jiān)聽(tīng)每種事件都有對(duì)應(yīng)的監(jiān)聽(tīng)器,監(jiān)聽(tīng)器是接口。監(jiān)聽(tīng)器定義了與該事件動(dòng)作有關(guān)的方法,這些方法都有一個(gè)參數(shù),接收事件源傳遞來(lái)的事件對(duì)象,這個(gè)事件對(duì)象包含了許多有用的信息,這是對(duì)象封裝的一個(gè)典型例子。創(chuàng)建好監(jiān)聽(tīng)器后,還需要將監(jiān)聽(tīng)器注冊(cè)到對(duì)應(yīng)的組件上才能實(shí)現(xiàn)組件上的事件監(jiān)聽(tīng)。一般使用組件的addXXXListener方法。8.3.4知識(shí)總結(jié)4.事件適配器Java語(yǔ)言為一些Listener接口提供了適配器(Adapter)類。java.awt.event包中含有的事件適配器包括以下幾個(gè):(1)ComponentAdapter組件適配器(2)ContainerAdapter容器適配器
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 萬(wàn)達(dá)商業(yè)廣場(chǎng)2024年物業(yè)綜合管理協(xié)議版B版
- 論文答辯精要解析
- 2025年度拆遷安置住房租賃及物業(yè)管理合同4篇
- 二零二五年度建筑工程項(xiàng)目建造師勞動(dòng)合同范本9篇
- 2025年度產(chǎn)教融合校企產(chǎn)學(xué)研合作項(xiàng)目執(zhí)行框架協(xié)議4篇
- 二零二五年度餐廳經(jīng)理勞動(dòng)合同范本:服務(wù)質(zhì)量提升3篇
- 二零二四年事業(yè)單位委托第三方社保代繳與員工績(jī)效獎(jiǎng)勵(lì)協(xié)議3篇
- 二零二五年度大米產(chǎn)品綠色包裝與環(huán)保材料應(yīng)用合同2篇
- 2024飼料行業(yè)客戶數(shù)據(jù)共享協(xié)議
- 2025年度商業(yè)地產(chǎn)項(xiàng)目場(chǎng)地租賃及物業(yè)管理合同12篇
- 國(guó)家自然科學(xué)基金項(xiàng)目申請(qǐng)書
- 電力電纜故障分析報(bào)告
- 中國(guó)電信網(wǎng)絡(luò)資源管理系統(tǒng)介紹
- 2024年浙江首考高考選考技術(shù)試卷試題真題(答案詳解)
- 《品牌形象設(shè)計(jì)》課件
- 倉(cāng)庫(kù)管理基礎(chǔ)知識(shí)培訓(xùn)課件1
- 藥品的收貨與驗(yàn)收培訓(xùn)課件
- GH-T 1388-2022 脫水大蒜標(biāo)準(zhǔn)規(guī)范
- 高中英語(yǔ)人教版必修第一二冊(cè)語(yǔ)境記單詞清單
- 政府機(jī)關(guān)保潔服務(wù)投標(biāo)方案(技術(shù)方案)
- HIV感染者合并慢性腎病的治療指南
評(píng)論
0/150
提交評(píng)論