JAVA課程第十二章Swing圖形界面.ppt
《JAVA課程第十二章Swing圖形界面.ppt》由會員分享,可在線閱讀,更多相關(guān)《JAVA課程第十二章Swing圖形界面.ppt(28頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
第十二章Swing圖形界面 12 1Swing組件概述 在Java早期版本中 窗體 按鈕等組件被列入java awt包中 但是AWT包隱藏著一個很嚴(yán)重的問題 雖然它是遵循著java 一次編譯 隨處運(yùn)用 的理念 然而它在圖形組件的繪制方法卻不能做到隨處運(yùn)用 因此用AWT包編寫出來的程序有可能在不同的操作平臺上顯示不同的效果 12 1Swing組件概述 在1998年推出JDK1 2版本時 javax swing包被列入java的基礎(chǔ)類庫中 在這里給出一個AWT與swing包的比較 1 新版的swing包可能與舊版不兼容 2 swing包是建立在AWT包的基礎(chǔ)上 所以完全舍棄AWT包也不太可能 3 AWT包的運(yùn)行速度比swing慢 導(dǎo)入相關(guān)的包 importjavax swing Swing組件要使用AWT基礎(chǔ)結(jié)構(gòu) 包括AWT事件模型 還需導(dǎo)入兩個包importjava awt importjava awt event 12 1Swing組件概述 Swing組件與AWT最大不同 在被實(shí)現(xiàn)時不包含本地代碼 可以不受硬件平臺的限制 具有更多的功能Swing組件比AWT的優(yōu)勢 Swing的標(biāo)簽和按鈕不僅可以顯示文本 還可以顯示圖標(biāo) 形狀可以任意Swing是AWT的擴(kuò)展 用于建立更復(fù)雜 跨平臺性更好的圖形界面 java建議使用Swing組件代替AWT組件 JFrame類 JFrame是提供給java應(yīng)用程序用來放置圖形用戶界面的一個容器 Swing包中的JFrame類與我們講解的AWT包中的Frame類都與創(chuàng)建窗口有關(guān) JFrame類是從Frame類派生的 12 2窗口 基于Swing組件的圖形界面 采用JFrame框架作為容器JFrame的構(gòu)造方法和成員方法 u 一個空白窗口 面板c的作用 設(shè)置布局管理器添加組件區(qū)別 AWT是直接添加到窗口的 12 3標(biāo)簽JLabel類 Label組件只能顯示文字但JLabel組件允許添加圖像 而且當(dāng)鼠標(biāo)的光標(biāo)停留在標(biāo)簽位置時 會顯示一段文字提示 setToolTipText Strings 繼承自JComponent類JLabelbl newJLabel Hello bl setToolTipText Thisisahellolabel 12 4按鈕JButton類 添加按鈕圖標(biāo)ImageIconico newImageIcon Icon JavaCup gif JButtonbt newJButton OK ico 文本框 Swing中文字輸入有兩個類 分別是JTextField類和JTextArea類 其中JTextField定義一個可以輸入單行文字的矩形區(qū)域 JTextArea定義一個可以輸入多行文字內(nèi)容的矩形區(qū)域 另外 JPasswordField是JTextField的子類 用來做密碼輸入 任務(wù)11 1 與AWT的不同之處 12 5單選按鈕和復(fù)選框 單選按鈕是由JRadioButton類派生 它是指一組按鈕中 用戶只能選擇其中一個按鈕 當(dāng)用戶選上時 此按鈕的狀態(tài)為 選中或ON 其余的都是 未選中或OFF 狀態(tài) 在java中 ButtonGroup類為JRadioButton類等提供多選一功能 復(fù)選框由JCheckBox類派生 它提供 選中 未選中 或 ON OFF 兩種狀態(tài) 當(dāng)用戶單擊復(fù)選框時改變復(fù)選框原來設(shè)置的狀態(tài) 補(bǔ)充資料例子12 1 補(bǔ)充資料例子12 1 單選按鈕和復(fù)選框引發(fā)事件 復(fù)選框和單選按鈕引發(fā)的事件是由ItemEvent類派生的 ItemEvent類的主要方法有 ObjectgetItem 方法 告知用戶是哪個選擇項(xiàng)的選中狀態(tài)發(fā)生變化 intgetStateChange 方法 可以使用戶知道到底是選中哪個選項(xiàng) 當(dāng)用戶選擇某個單選按鈕或復(fù)選框時 就會引發(fā)ItemEvent類事件 當(dāng)事件發(fā)生時 監(jiān)聽者會引用ItemListener類中的itemStateChange ItemEvente 方法響應(yīng)事件源對象狀態(tài)的改變 補(bǔ)充資料例子12 2 補(bǔ)充資料例子12 2 判斷事件源的組件是否被選中 下拉列表框 下拉列表框是由JComboBox類派生 其特點(diǎn)是將所有選項(xiàng)折疊收藏起來 只顯示最前面的那個或被用戶選中的某一個 補(bǔ)充資料例子12 3 實(shí)現(xiàn)上述界面點(diǎn)擊退出可關(guān)閉窗口點(diǎn)擊保存可將某個同學(xué)信息保存到以學(xué)號命名的文件中 教材任務(wù)11 3 學(xué)生信息輸入 用Swing組件實(shí)現(xiàn) 示例InputFrame1 可參考本ppt中的 補(bǔ)充例子按鈕和標(biāo)簽文本框 例子11 4菜單 Swing總結(jié) 1Swing組件一般前面加上一個大寫的JFrame JFrameButton JButton2通過JFrame的getContentPane 方法得到得到Container對象 是窗口的面板 Swing組件是添加到該面板中 設(shè)置布局管理器也是通過它Containerc getContentPane c setLayout newFlowLayout 100 100 10 c add label1 該面板通過窗口的獲得3每個組件都是容器 除添加文本還可以添加圖片4同為一組的單選框需要加入到一個ButtonGroup中去 上機(jī)作業(yè)1 綜合圖形界面 輸入學(xué)生信息后 在下面的幾個文本域中分別顯示學(xué)生信息的變化 上機(jī)作業(yè)2 實(shí)現(xiàn)如下菜單界面 要求點(diǎn) 學(xué)生信息 輸入 后可以彈出作業(yè)A的界面輸入信息 示例MainFrame 作業(yè)3 代替中段考的大作業(yè) 猜大小 游戲 教材11章練習(xí)1或者補(bǔ)充資料12章課后習(xí)題6 計(jì)算器任何其他小游戲說明 老師要當(dāng)面檢查運(yùn)行效果 并對代碼提問根據(jù)難度和實(shí)現(xiàn)效果代碼熟悉程度給分15周以前 上機(jī)課時 交 過期不交視為中段考缺考- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- JAVA 課程 第十二 Swing 圖形界面
鏈接地址:http://m.appdesigncorp.com/p-6641216.html