Java Swing圖形界面開(kāi)發(fā)(第3章).ppt_第1頁(yè)
Java Swing圖形界面開(kāi)發(fā)(第3章).ppt_第2頁(yè)
Java Swing圖形界面開(kāi)發(fā)(第3章).ppt_第3頁(yè)
Java Swing圖形界面開(kāi)發(fā)(第3章).ppt_第4頁(yè)
Java Swing圖形界面開(kāi)發(fā)(第3章).ppt_第5頁(yè)
已閱讀5頁(yè),還剩41頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

2 用來(lái)構(gòu)成一個(gè)圖形化界面的 各種元素 如 按鈕 標(biāo)簽 樹(shù) 表格以及框架等 且每個(gè)組件又會(huì)擁有不同形態(tài) 以滿足不同用戶需要 是構(gòu)成圖形化界面最基本的元素 JavaSwing組件 3 目的 了解整個(gè)JavaSwing組件類的框架 主要介紹JavaSwing組件的一些基礎(chǔ)知識(shí) 包括 Swing組件類的繼承 頂層類的結(jié)構(gòu) 頂層容器類的使用 內(nèi)容面板的使用 如何在頂層容器中添加菜單欄 JComponent類的相關(guān)知識(shí) 4 回顧 AWT組件類的層次 繼承 結(jié)構(gòu) 5 3 1Swing組件類的層次 6 從以上結(jié)構(gòu)圖可知 Swing組件類可分成兩種類型 JComponent類 Window類其中 Window組件類 包括一些 可獨(dú)立顯示 的組件 JComponent組件類 包括一些 不能獨(dú)立顯示 的組件 簡(jiǎn)要說(shuō)明 7 可獨(dú)立顯示的組件當(dāng)運(yùn)行一個(gè)程序時(shí) 這個(gè)組件無(wú)須托付在其它組件上就可以顯示 即能夠直接顯示出來(lái) 如 JFrame類 無(wú)須依靠任何其它組件即可獨(dú)立顯示 不可獨(dú)立顯示的組件必須依靠可獨(dú)立顯示的組件才能顯示 如 文本框組件 按鈕組件 必須依托在JFrame框架組件上才能顯示出來(lái) 8 Javax swing包 中的Swing組件共有三種類型 頂層組件 中間組件 基本組件頂層組件 又被稱為 頂層容器 中間組件 又分為 中間容器 和 特殊中間組件 按功能上劃分 9 10 各組件類型含義 1 頂層容器如 JFrame JApplet JDialog JWindow 可理解為 Window 組件 指能夠獨(dú)立顯示的組件 2 中間容器如 JPanel JScrollPane JSplitPane JToolBar 指那些可充當(dāng)載體 但也不能獨(dú)立顯示的組件 即可將一些基本控件放在其中 但卻不能獨(dú)立顯示 必須要依托在頂層容器內(nèi)方能顯示 11 3 特殊容器如 JInternalFrame JLayeredPane JRootPane作為一種中間容器類 是GUI上起特殊作用的中間層 只是在圖形上更能起到 美化 和 專業(yè)化 的作用 4 基本組件如 JButton JComboBox JList JMenu JSlider JTextField 主要用于實(shí)現(xiàn)人機(jī)交互的組件 指那些只能依托在中間容器上才能被顯示的組件 而不能獨(dú)立存在 12 基本組件 程序示例 13 運(yùn)行結(jié)果 14 說(shuō)明 運(yùn)行結(jié)果沒(méi)有任何顯示 原因 基本組件 必須依托在中間容器中 并讓中間容器依托在頂層容器內(nèi)才能顯示出來(lái) 15 程序修改 16 運(yùn)行結(jié)果 說(shuō)明 上述 修改程序 可將基本組件顯示出來(lái) 從而也證明了基本組件是不能獨(dú)立顯示的組件 17 頂層容器 中間容器 內(nèi)容面板 基本組件疊放層次示意圖 18 3 2Window類 上節(jié)介紹了頂層容器類的基本概念 本節(jié)將介紹有關(guān)更深入 實(shí)用的知識(shí) 如 怎樣使用頂層容器類 頂層容器類的種類 頂層容器類所繼承下來(lái)的層次等 19 3 2 1頂層容器類和包含層次 問(wèn)題 使用Java進(jìn)行圖形編程時(shí) 組件被繪制在哪里 解決 首先需要一個(gè)能提供圖形繪制的容器 頂層容器 Desktop 頂層容器是進(jìn)行 圖形編程 的基礎(chǔ) 一切圖形化的東西 都必須包含在頂層容器中 也可將其想象成一個(gè)窗口 Swing中主要有三種可以使用的頂層容器 JFrame 用來(lái)設(shè)計(jì)類似于Windows系統(tǒng)中窗口形式的應(yīng)用程序 JDialog 和JFrame類似 只是JDialog常用來(lái)設(shè)計(jì)對(duì)話框 JApplet 用來(lái)設(shè)計(jì)可以嵌入在網(wǎng)頁(yè)中的Java小程序 20 對(duì)頂層容器類的理解 三種頂層容器均可獨(dú)立顯示在實(shí)際開(kāi)發(fā)中 通常作為一個(gè)圖形界面的最頂層窗口 Swing圖形界面至少需要有一個(gè)頂層容器容器與其所包含的組件 形成了 樹(shù)狀包含層次結(jié)構(gòu) 頂層容器就是這個(gè)層次結(jié)構(gòu)的 根 每個(gè)頂層容器都有一個(gè)內(nèi)容面板即中間容器類組件 可包含 承載 界面中所需要的各種基本組件 在頂層容器中可添加菜單組件菜單組件一般放在頂層容器中 和內(nèi)容面板是并行的 即頂層容器可以同時(shí)包含菜單組件和內(nèi)容面板 21 實(shí)際開(kāi)發(fā)中 大多數(shù)Java程序都使用 JFrame 組件對(duì)象作為頂層容器 當(dāng)然 JDialog 和 JApplet 也可以作為頂層窗口 只不過(guò)JDialog一般作為彈出窗口使用 而JApplet一般作為嵌在網(wǎng)頁(yè)中的小程序的框架使用 大多數(shù)圖形界面的頂層容器仍使用JFrame作為程序框架 22 JFrame作為頂層窗口示意圖 23 首先 創(chuàng)建一個(gè)頂層容器JFrame 其次 創(chuàng)建一個(gè)內(nèi)容面板或中間容器JPanel 也可以創(chuàng)建一個(gè)菜單組件JMenu 最后 將所需要的基本組件JComponent 按照一定的布局方式 添加到內(nèi)容面板中 即可形成一個(gè)圖形界面 設(shè)計(jì)一個(gè)圖形界面的步驟 24 3 2 2在頂層容器中添加組件 與AWT組件不同 Swing基本組件不能直接添加到頂層容器中 而必須添加到一個(gè)與Swing頂層容器相關(guān)聯(lián)的 內(nèi)容面板 ContentPane 上 內(nèi)容面板實(shí)際上是一個(gè)中間組件 容器 輕量組件 基本規(guī)則 須創(chuàng)建一個(gè)與頂層容器相聯(lián)系的內(nèi)容面板 避免使用非Swing的重量級(jí)組件 25 在JFrame頂層容器中添加中間組件的方法 方法一 用getContentPane 方法 獲得JFrame的內(nèi)容面板 再在這個(gè)內(nèi)容面板中添加組件 方法為 frame getContentPane add childComponent 方法二 首先建立一個(gè)Jpanel或JDesktopPane之類的中間容器 將組件添加到容器中 然后再用setContentPane 方法將該中間容器設(shè)置為JFrame的內(nèi)容面板 26 27 在頂層容器中添加內(nèi)容面板程序示例 28 程序運(yùn)行結(jié)果 圖3 5添加內(nèi)容面板測(cè)試程序運(yùn)行結(jié)果 29 在內(nèi)容面板中添加普通組件示例程序 30 程序運(yùn)行結(jié)果 圖3 6在內(nèi)容面板中添加普通組件 31 3 2 3在頂層容器中添加菜單欄 32 程序運(yùn)行結(jié)果 33 在菜單中的空白處是否能添加基本組件呢 34 程序運(yùn)行結(jié)果 圖3 9組件添加到菜單的頂層容器中 說(shuō)明 主要是在頂層容器中 使用setJMenuBar 方法嵌入菜單條 使用setContentPane 嵌入按鈕組件到中間容器 按照此方式 即可形成一個(gè)完整的應(yīng)用程序界面 35 3 3JComponent類 36 關(guān)于JComponent類的說(shuō)明 JComponent類是所有 輕量組件 的父類 上述所列 僅為JComponent類的一些常用子類 所有繼承JComponent類的組件 都屬于基本組件類 只能依賴中間容器存在 顯示 37 JComponent類的特性 9大顯著特性 38 功能1 Tooltips 工具提示功能通過(guò)在 setToolTipText方法 中指定字符串 為一個(gè)組件提供幫助 即 當(dāng)鼠標(biāo)停留在組件上時(shí) 指定的 字符串 將出現(xiàn)在該組件附近 39 程序運(yùn)行結(jié)果 圖3 11工具提示程序運(yùn)行 40 功能2 繪畫(huà)和邊框使用 setBorder方法 或 BorderFactory類 創(chuàng)建Swing所提供的絕大多數(shù)邊框 41 程序運(yùn)行結(jié)果 圖3 12繪制按鈕邊框 42 說(shuō)明 邊界由 BorderFactory creat Border 返回 其類型為Border 常用邊界 黑線 BorderFactory createLineBorder Color black 凸起邊界 BorderFactory createEtchedBorder EtchedBorder RAISED 凹下邊界 BorderFactory createEtchedBorder EtchedBorder LOWERED 凸起 BorderraisedBevel BorderFactory createRaisedBevelBorder 凹下 BorderLoweredBevel BorderFactory createLoweredBevelBorder 加粗默認(rèn)線 BorderFactory createCompoundBorder raisedBevel loweredBevel 43 功能3 可插入的觀感器 可 定制桌面 更新顏色方案 使系統(tǒng)適應(yīng)用戶的習(xí)慣和需要 使界面具有不同的風(fēng)格 Swing提供一些已封裝的觀感 如默認(rèn) Motif和Windows的L F 說(shuō)明 當(dāng)程序未設(shè)置外觀感覺(jué)時(shí) 系統(tǒng)必須確定使用哪種外觀感覺(jué) 首先將檢查程序代碼中是否指定了一個(gè)外觀感覺(jué) 若已經(jīng)指定 即使用程序員所指定的外觀感覺(jué) 若沒(méi)有指定 系統(tǒng)將選擇Java默認(rèn)外觀感覺(jué) 44 功能4 自定義屬性 將一個(gè)或多個(gè)屬性與任何JComponent相關(guān)聯(lián) 功能5 layout支持 對(duì)布局的支持功能 功能6 無(wú)障礙

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論