

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、171第5章Java圖形用戶界面圖形用戶界面本章將用面向?qū)ο蟮木幊谭椒▉砭帉憥D形用戶界面的程序。圖形用戶界面(GraphicalUserInterface,GUI(讀作gooee))為用戶提供了一個直觀、方便、快捷的圖形化操作界面。借助Java中的菜單、輸入?yún)^(qū)、按鈕、對話框、窗口等標準界面元素可以創(chuàng)建個性化的圖形用戶界面,再加上鼠標、鍵盤等設(shè)備的操作,用戶可以方便地向計算機系統(tǒng)發(fā)出指令,啟動操作,并將系統(tǒng)運行的結(jié)果在同一個用戶界面上顯
2、示出來。雖然現(xiàn)在有許多Java開發(fā)環(huán)境都能夠自動或很方便地生成圖形界面,但我們?nèi)匀挥斜匾莆認ava的圖形用戶界面程序的基本原理。這包括:Java的圖形用戶界面程序有哪些基本組件類,這些類的層次關(guān)系是怎樣的;在屏幕上如何擺放這些組件,怎樣用這些基本的組件設(shè)計出專業(yè)的圖形界面;這些組件如何響應用戶的行為,也就是如何響應用戶事件,即事件驅(qū)動原理。如果沒有掌握這些基本內(nèi)容,那么這方面的編程水平將停留在做“表面文章”上。核心內(nèi)容:1.Swing
3、簡介2.圖形用戶界面與事件驅(qū)動的程序設(shè)計基礎(chǔ)3.布局管理器4.事件處理機制5.Swing容器6.Swing基本組件7.Swing高級組件8.Java圖形繪制5.1Swing簡介簡介應用程序的界面是人機之間的接口,早期的操作系統(tǒng)僅支持命令操作,對系統(tǒng)的任何操作都通過輸入命令來執(zhí)行,也沒有鼠標可以點擊,系統(tǒng)對用戶的命令也是以文本形式反饋,這樣的界面即為文本界面。圖形用戶界面中的圖形是相對于文本界面而言的,實際上主要指的是窗體。用戶可以借助圖
4、形化的菜單、按鈕等加上鼠標的點擊向系統(tǒng)發(fā)出操作命令,并將程序運行結(jié)果通過圖形界面反饋給用戶。如今的操作系統(tǒng)都是基于窗口操作并提供鼠標支持,微軟的操作系統(tǒng)更是直接命名為視窗(Windows)。當前幾乎所有的桌面應用程序(DesktopApplication)和客戶端/服務(wù)器程序(ClientServerApplication)的客戶端都采用圖形用戶界面。每—種操作系統(tǒng)都會提供窗體部件API(ApplicationProgrammingIn
5、terface)以供系統(tǒng)自身調(diào)用顯示和供程序開發(fā)人員創(chuàng)建GUI應用程序時調(diào)用。Java在圖形用戶界面編程方面提供了功能強大的工具包。在JDK1.0中,圖形組件存放在抽象窗口工具集AWT(AbstractWindowToolkit)的庫中。目標是希望構(gòu)建一個通用的GUI,使利用它編寫的程序能夠運行在所有的平臺上,以實現(xiàn)SUN公司提出的口號“一次編寫,隨處運行”(Writeoncerunanywhere)??紤]到跨平臺的原因,AWT只提供了
6、各個平臺都支持的,構(gòu)建GUI必需的一些基本組件,因此AWT包小而簡單。由于AWT直接調(diào)用本地操作系統(tǒng)的圖形構(gòu)件來實現(xiàn)圖形界面,使得用AWT構(gòu)建的GUI往往在不同的操作系統(tǒng)平臺上具有不同的風格,而且GUI的性能也受到了限制。例如,生成一個AWT的復選框會導致AWT直接調(diào)用下層本地程序來生成一個復選框。不幸的是,一個Windows平臺上的復選框同MacOS平臺或者各種UNIX風格平臺上的復選框并不是那么相同。其結(jié)果是一個AWT應用可能在Wi
7、ndows上表現(xiàn)很好,可是到了MacOS上幾乎不能使用,或者正好相反。這影響了Java程序的跨平臺性。371(LayoutManager)這個工具來管理組件在容器中的布局,而不使用直接設(shè)置組件位置和大小的方式。每個容器都有一個布局管理器,當容器需要對某個組件進行定位或判斷其大小尺寸時,就會調(diào)用其對應的布局管理器。常用的布局管理器有順序布局管理器(FlowLayout),網(wǎng)格布局管理器(GridLayout),邊界布局管理器(BderLa
8、yout)等。4事件處理機制(EventHling)事件處理機制是用來接收和處理事件的機制。通過事件處理機制能夠讓生成的圖形用戶界面動起來,通過監(jiān)聽和響應鼠標,鍵盤等設(shè)備所觸發(fā)的事件來完成系統(tǒng)所需要的各項功能。Java采用委托事件處理模型來實現(xiàn)事件處理。5.2.2Java圖形用戶界面的實現(xiàn)圖形用戶界面的實現(xiàn)使用Swing創(chuàng)建圖形用戶界面的一般步驟:1.選取組件:創(chuàng)建組件對象。2.設(shè)計布局:將組件對象按照一定布局加入到容器中。3.響應事件
9、:初始化組件對象,并對組件對象注冊某事件監(jiān)聽器。Swing圖形用戶界面程序設(shè)計有兩個關(guān)鍵的方面。一方面是GUI對象在框架的內(nèi)容面板上的布局,在Swing中通過布局管理器(LayoutManager)來實現(xiàn);另一方面是處理這些GUI對象產(chǎn)生的事件,通過事件處理機制來實現(xiàn)。本章5.3和5.4節(jié)將分別介紹Swing布局管理器和事件處理機制。5.2.3Swing的類層次結(jié)構(gòu)的類層次結(jié)構(gòu)在javax.swing包中,定義了兩種類型的組件:頂層容器
10、(JFrame,JApplet,JDialog和JWindow)和輕量級組件。Swing組件都是AWT的Container類的直接子類和間接子類。swing包是Swing提供的最大包,它包含將近100個類和25個接口,幾乎所有的Swing組件都在swing包中。圖51和52描述了Swing與AWT的關(guān)系以及Swing組件層次結(jié)構(gòu)。由圖51可以看出,除了使用Swing包中的容器和組件外,Swing仍然使用AWT包中的Font,Col,Gr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- java圖形用戶界面_java教程
- 第7章圖形用戶界面
- 第6章 圖形用戶界面
- 第11章 matlab圖形用戶界面設(shè)計.ppt.convertor
- 第2章 創(chuàng)建用戶界面
- vc++ 第5章 圖形繪制
- 圖形用戶界面(gui)開發(fā)與測試
- 圖形用戶界面的專利保護.pdf
- 基于opengl的vxworks圖形用戶界面開發(fā)
- 基于qt的圖形用戶界面設(shè)計
- 針對圖形用戶界面的軟件測試研究.pdf
- 基于OpenGL的VxWorks圖形用戶界面開發(fā).pdf
- 圖形用戶界面的擬物化設(shè)計研究.pdf
- 圖形用戶界面測試中相關(guān)問題研究.pdf
- DVD圖形用戶界面設(shè)計與開發(fā).pdf
- 實時參考咨詢軟件圖形用戶界面研究.pdf
- 嵌入式linux系統(tǒng)的圖形用戶界面
- erhl5圖形界面配置
- 圖形用戶界面中影響用戶認知的圖標設(shè)計因素研究.pdf
- f5圖形界面操作
評論
0/150
提交評論