




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、圖形界面應(yīng)用程序本章的主要內(nèi)容Java的圖形用戶界面中容器的概念和用法如何使用布局管理器來(lái)獲得期望的動(dòng)態(tài)布局事件處理相關(guān)概念GUI(graphical user interface)AWT(Abstract Windows Toolkit)提供基本的GUI組件,用在所有的Java applets及應(yīng)用程序中AWT圖BorderLayoutObjectGridLayoutFlowLayoutComponentMenuComponentMenuBarMenuItemButtonCheckBoxTextComponentContainerWindowPanelDialogFrame容器可以容納組件及
2、其他容器,是建立復(fù)雜的布局是關(guān)鍵,也是基本的 Container:window、Panelwindow:Frame、Dialog獨(dú)立于其他容器Panel:確定一個(gè)四邊形,其它組件可以放入其中 。需包含在其他容器中Frame是Window的子類(lèi)具有標(biāo)題和縮放角從組件繼承并以add方式添加組件能以字符串規(guī)定的標(biāo)題來(lái)創(chuàng)建不可見(jiàn)框架對(duì)象將Border Layout當(dāng)做缺省布局管理器用setLayout方式來(lái)改變?nèi)笔〔季止芾砥?Frame的創(chuàng)建過(guò)程Frame f = new Frame(“TitleName”);f.setSize(500,500);f.setLayout(LayoutManager);
3、f.add(Component);f.setVisible(true);Panel為組件提供空間允許子面板擁有自己的布局管理器以add方法添加組件 Panel的創(chuàng)建過(guò)程Panel p = new panel();p.setLayout(LayoutManager);p.add(Component);其他容器.add(p);常用組件按鈕(Button)復(fù)選框(CheckBox)單選項(xiàng)(heckBoxGroup)下拉列表框(Choice)列表框(List)對(duì)話框(Dialog)文件對(duì)話框(FileDialog)標(biāo)簽(Label)滾動(dòng)面板(ScrollPane)單行文本框(TextField)多行文
4、本框(TextArea)菜單(MenuBar、Menu、MenuItem)(不是從component派生)容器布局(Container Layout) 定位組件使用布局管理器每個(gè)Container(比如一個(gè)Panel或一個(gè)Frame)都有一個(gè)與它相關(guān)的缺省布局管理器,它可以通過(guò)調(diào)用setLayout()來(lái)改變。 中止布局管理器setLayout(null);然后,必須對(duì)所有的組件使用setLocation(),setSize()或setBounds(),來(lái)將它們定位在容器中。布局管理器 FlowLayoutPanel和Applets的缺省布局管理器 BorderLayoutWindow、Dia
5、log及Frame的缺省管理程序 GridLayoutCardLayoutGridBagLayout布局管理器地使用根據(jù)構(gòu)造器創(chuàng)建布局管理器newsetLayout()為容器添加布局管理器對(duì)于某些布局可以在容器地add()方法中指明組件放置地位置FlowLayout構(gòu)造器 FlowLayout() FlowLayout(intalign) FlowLayout(intalign, inthgap, intvgap)例子ExGui.javaFlowLayout.CENTER FlowLayout.LEADINGFlowLayout.LEFTFlowLayout.RIGHTFlowLayout.T
6、RAILINGBorderLayout構(gòu)造器: BorderLayout() BorderLayout(inthgap, intvgap)包括五個(gè)明顯的區(qū)域:東、南、西、北、中。 每個(gè)方向上只能放一個(gè)組件,多者相互覆蓋。add(組件,方位)例子ExGui2.javaBorderLayout.NORTH BorderLayout.WESTBorderLayout.CENTERBorderLayout.EAST BorderLayout.SOUTHGridLayout用許多行和列來(lái)創(chuàng)建管理程序。然后組件就填充到由管理程序規(guī)定的單元中。 構(gòu)造器: GridLayout() GridLayout(in
7、trows, intcols) GridLayout(introws, intcols, inthgap, intvgap)例子GridEx.java組件1組件1組件1組件1組件1組件1CardLayout構(gòu)造器:CardLayout( )CardLayout(inthgap, intvgap)add(組件,卡片標(biāo)簽)show(容器,卡片標(biāo)簽)按標(biāo)簽顯示相應(yīng)的卡片例子CardTest.javaGridBagLayout將窗口分成很多網(wǎng)格,然后在網(wǎng)格上劃分單元格,指定每個(gè)單元格的位置及屬性,再將組件放入每個(gè)單元格。創(chuàng)建單元格的約束條件GridBagConstraintsGridBagLayout
8、.setConstraints(組件,約束條件)設(shè)定組件將來(lái)在容器中的位置,然后用add()加入。P147例布局的綜合使用使用嵌套容器來(lái)完成復(fù)雜的布局P149例繪圖操作Graphics對(duì)象可以進(jìn)行各種繪圖操作paint函數(shù)將Graphics對(duì)象作為參數(shù),完成各種畫(huà)圖操作paint的執(zhí)行可通過(guò)繼承Panel,重寫(xiě)paint()方法并激活來(lái)實(shí)現(xiàn)各種畫(huà)圖操作。P151例子事件處理什么是事件事件描述發(fā)生了什么的對(duì)象Event事件源事件的產(chǎn)生器事件處理器接收事件、解釋事件并處理用戶交互的方法事件委托模型編寫(xiě)事件處理程序的過(guò)程根據(jù)事件類(lèi)型實(shí)現(xiàn)相應(yīng)的事件監(jiān)聽(tīng)器接口,即創(chuàng)建事件處理器是實(shí)現(xiàn)接口的類(lèi)不是接口為事
9、件源注冊(cè)事件監(jiān)聽(tīng)器addXXXListener(事件監(jiān)聽(tīng)器)事件類(lèi)型 事件對(duì)應(yīng)的接口名稱(chēng)及內(nèi)含方法表實(shí)現(xiàn)事件處理器的另一種方法繼承Adapter類(lèi)多個(gè)事件處理器一個(gè)控件可注冊(cè)多個(gè)監(jiān)聽(tīng)器一個(gè)類(lèi)可實(shí)現(xiàn)多個(gè)監(jiān)聽(tīng)器接口P160例使用內(nèi)類(lèi)和匿名類(lèi)內(nèi)類(lèi)。例10-34匿名類(lèi)。例10-35色彩、字體與打印色彩Color容器設(shè)置前景色、背景色setForeground()和setBackground()字體Fontnew Font(字形,字效,字號(hào));組件添加字體setFont()GraphicsEnvironment.getLocalGraphicsEnvironment()getAllFonts()JFC(
10、Java Foundition Classes)AWTJava2DJava2D是一圖形API,它為Java應(yīng)用程序提供了一套高級(jí)的有關(guān)二維(2D)圖形圖像處理的類(lèi)。 Accessibility用以輔助開(kāi)發(fā)使用非傳統(tǒng)輸入和輸出的應(yīng)用程序 Drag & Drop提供了Java和本地應(yīng)用程序之間的互操作性 SwingSwing與AWTSwing是圍繞著實(shí)現(xiàn)AWT各個(gè)部分的API構(gòu)筑的,即AWT是基礎(chǔ)Swing中的大多數(shù)組件不象AWT那樣使用與平臺(tái)相關(guān)的實(shí)現(xiàn)Swing是純Java代碼,移植性較AWT更好,在不同的平臺(tái)也可以有相同的外觀Swing的組件庫(kù)更全,每個(gè)組件的功能更豐富Swing運(yùn)行效率要比AWT低使用Swing創(chuàng)建GUI導(dǎo)入Swing包import com.sun.java.swing.*頂層容器(JFrame,JApplet,JDialog,和JWindow) 輕質(zhì)組件(如JButton,JPanel和JMenu) 將Sw
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 手房買(mǎi)賣(mài)合同委托書(shū)
- 建筑安裝工程門(mén)窗安裝合同
- 平房出租房屋合同
- 光伏產(chǎn)品購(gòu)銷(xiāo)合同
- 商品房預(yù)售購(gòu)買(mǎi)合同
- 合同之私對(duì)公借款合同
- 聯(lián)合保理合同范本
- 監(jiān)控桿采購(gòu)合同范本
- 會(huì)計(jì)審計(jì)服務(wù)合同范本
- 2025教師資格考試高中英語(yǔ)標(biāo)準(zhǔn)預(yù)測(cè)試卷答案及解析6-10
- 十二生英語(yǔ)小品劇本
- 地質(zhì)災(zāi)害防治工程常用表格全
- 老姜盤(pán)口語(yǔ)言解密高級(jí)版全集
- 車(chē)輛維修工程第五章汽車(chē)修理工藝課件
- 現(xiàn)代環(huán)境生物技術(shù)
- 光纜施工項(xiàng)目?jī)r(jià)格表(包干價(jià)參考)
- 《2019版預(yù)防和治療壓力性損傷快速參考指南》簡(jiǎn)要分享
- 第四章鉛酸蓄電池
- GA/T 1093-2013出入口控制人臉識(shí)別系統(tǒng)技術(shù)要求
- GA 237-2018金屬腳鐐
- GA 1517-2018金銀珠寶營(yíng)業(yè)場(chǎng)所安全防范要求
評(píng)論
0/150
提交評(píng)論