




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、黑客防線Java培訓(xùn)系列教程課程八可視化程序設(shè)計(jì)(GUI)海嘯天鳴(Ansty)A推薦屏幕分辨率:1024768可視化程序設(shè)計(jì)是基于圖形用戶界面(GUI)和可視化組件的一種快速應(yīng)用開發(fā)(RAD)方法;可視化程序設(shè)計(jì)可以根據(jù)用戶需求快速建立原型,驗(yàn)證并實(shí)現(xiàn)用戶需求;并通過所見即所得的開發(fā)提高編程工作的效率。Java有一些優(yōu)秀的可視化編程工具提供了功能有限的可視化程序設(shè)計(jì)開發(fā)環(huán)境,但目前Java程序設(shè)計(jì)無法完全依賴于可視化編程工具的支持,仍然有很多工作需要手工編程來完成。NetBeans IDE提供了一些工具,可幫助我們以可視化方式設(shè)計(jì)和生成Java窗體,簡化圖形用戶界面的設(shè)計(jì)過程,這些工具包括窗
2、體編輯器、檢查器窗口、組件面板窗口、屬性窗口、連接向?qū)Аclipse同樣也有一個swt-designer插件方便我們進(jìn)行GUI設(shè)計(jì)窗體編輯器檢查器窗口組件面板窗口屬性窗口項(xiàng)目窗口Java里面用于GUI設(shè)計(jì)的包有兩個,一個是java.AWT,另外一個就是javax.swing。大家都知道,不同的系統(tǒng)平臺在GUI方面提供的API是不同,而且顯示的效果也是不同的。然而java.awt這個包所提供的組件對程序運(yùn)行所在的平臺依賴性很高,用AWT組件編寫的程序如果從windows平臺轉(zhuǎn)移到linux平臺,所設(shè)計(jì)的GUI往往會走樣。所以我們?yōu)榱顺绦蛟诟鱾€不同系統(tǒng)平臺上面都顯示出同樣的GUI,就要大量的使用
3、javax.swing.*包提供的組件。Swing:是第二代GUI開發(fā)工具,它建立在AWT之上,但用新版本的組件替代了舊版本的組件,它提供了許多新的組件和相關(guān)的API。常用的窗體容器1、JFrame類(頂層應(yīng)用程序窗口)JFrame類及其子類創(chuàng)建的對象是窗體(1)JFrame類及其子類創(chuàng)建的窗體是swing窗體(2)不可以把組件直接加到swing窗體中,應(yīng)該把組件加到內(nèi)容面板中(3)不能為swing窗體設(shè)置布局,而應(yīng)當(dāng)為內(nèi)容面板設(shè)置布局(4)swing窗體通過調(diào)用getContentPane()方法得到它的內(nèi)容面板JFrame的內(nèi)部結(jié)構(gòu) -JFrame(底層) | -JRoot | -JLay
4、eredPane | -菜單條 |-內(nèi)容窗格 | -透明窗格(頂層)Swing的組件不能直接添加到頂層容器(JFrame)中,它必須添加到一個與Swing頂層容器相關(guān)聯(lián)的內(nèi)容窗格上。2、JApplet類(1)不可以把組件直接添加到小程序容器中,也應(yīng)該添加到內(nèi)容面板中(2)不能為小程序設(shè)置布局(3)小程序容器通過調(diào)用getContenPane()方法得到內(nèi)容面板3、JDialog類(1)不可以把組件直接添加到對話框容器中,也應(yīng)該添加到內(nèi)容面板中(2)不能為對話框設(shè)置布局(3)對話框容器通過調(diào)用getContenPane()方法得到內(nèi)容面板4、JPanel面板:JPanel();JPanel(布局
5、對象)我們先開始建立一個窗體吧import javax.swing.*;public class SimpleFrame01 extends JFramepublic SimpleFrame01 () /super(SimpleFrame01);setTitle(SimpleFrame01);/設(shè)置標(biāo)題setSize(300,200);/設(shè)置窗體為300*200setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/關(guān)閉窗口時退出public static void main(String args)SimpleFrame01 frame = new S
6、impleFrame01();frame.setVisible(true);對JFrame添加組件有很多種方式,不過都是往ContentPane里面添加?xùn)|西的1) 用getContentPane()方法獲得JFrame的內(nèi)容窗格,再對其加入組件import javax.swing.*;public class SimpleFrame02 extends JFramepublic SimpleFrame02 () super(SimpleFrame02);/setTitle(SimpleFrame02);/設(shè)置標(biāo)題setSize(300,200);/設(shè)置窗體為300*200getContentP
7、ane().add(new JLabel(SimpleFrame02);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/關(guān)閉窗口時退出public static void main(String args)SimpleFrame02 frame = new SimpleFrame02();frame.setVisible(true);2)建立一個JPanel之類的容器,把組件加到該容器中,用setContentPane方法設(shè)置內(nèi)容窗格import javax.swing.*;public class SimpleFrame03 extends J
8、Framepublic SimpleFrame03 () super(SimpleFrame03);/setTitle(SimpleFrame03);/設(shè)置標(biāo)題setSize(300,200);/設(shè)置窗體為300*200JPanel pane = new JPanel();pane.add(new JLabel(SimpleFrame03);setContentPane(pane);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/關(guān)閉窗口時退出public static void main(String args)SimpleFrame03 fr
9、ame = new SimpleFrame03();frame.setVisible(true);事件處理事件是由程序檢測到的行為和動作。在一個應(yīng)用程序中,程序員通常無法預(yù)測用戶下一個將要執(zhí)行的動作。為了解決這個問題,我們可以編寫代碼來處理感興趣的事情,而不是編寫那些按照一定順序執(zhí)行的代碼。在Java程序中,我們不用知道事件是如何調(diào)用的,我們只關(guān)心如何編寫事件處理代碼。Java事件處理模型一般包括以下兩個主要類型的事件:用戶事件 用戶事件是由用戶發(fā)出的行為。如:操作鼠標(biāo)、按下鍵盤系統(tǒng)事件系統(tǒng)事件是由操作系統(tǒng)發(fā)出的。如:定時器、相應(yīng)對應(yīng)事件。一個Java事件處理模型的具體步驟是:1、 創(chuàng)建事件監(jiān)
10、聽器2、 注冊事件監(jiān)聽器3、 創(chuàng)建事件對象4、 通知事件發(fā)生5、 執(zhí)行事件處理程序例子:import javax.swing.*;import java.awt.event.*;public class SimpleFrame04 extends JFrameJButton button;public SimpleFrame04 () super(SimpleFrame04);/setTitle(SimpleFrame04);/設(shè)置標(biāo)題setSize(300,200);/設(shè)置窗體為300*200button = new JButton(Click);getContentPane().add(button);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/關(guān)閉窗口時退出button.addActionListener(new ClickActionListener();/向組件注冊事件監(jiān)聽器public static void main(String args)SimpleFrame04 frame = new SimpleFrame04();frame.setVisible(true);/創(chuàng)建事件監(jiān)聽器private class Clic
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度天津市護(hù)師類之護(hù)士資格證押題練習(xí)試題B卷含答案
- 三年級音樂課程教學(xué)計(jì)劃
- 2024年度天津市護(hù)師類之婦產(chǎn)護(hù)理主管護(hù)師考前自測題及答案
- 市政工程施工質(zhì)量管理措施探討
- 西北工業(yè)大學(xué)自主招生自薦信的評估標(biāo)準(zhǔn)
- 人教版七年級生物家長會活動計(jì)劃
- 環(huán)保項(xiàng)目投資申請及審批流程
- 手術(shù)室護(hù)理人員多學(xué)科協(xié)作培訓(xùn)計(jì)劃
- 三年級數(shù)學(xué)自主學(xué)習(xí)計(jì)劃
- 智能制造項(xiàng)目EPC投資控制措施
- 2025屆山西省高三一模地理試題(原卷版+解析版)
- 2024年電信銷售員工年終總結(jié)
- 2025年度執(zhí)業(yè)藥師職務(wù)聘用協(xié)議模板
- Unit3 Weather Part A(說課稿)-2023-2024學(xué)年人教PEP版英語四年級下冊
- 2-山東工業(yè)技師學(xué)院申報國家級高技能人才培訓(xùn)基地項(xiàng)目申報書
- 常用消毒劑的分類、配制及使用課件演示幻燈片
- GB 45069-2024懸崖秋千安全技術(shù)要求
- 員工反恐怖協(xié)議
- 2025年高考政治一輪復(fù)習(xí)知識清單必修四《哲學(xué)與文化》重難點(diǎn)知識
- 2021年4月17日江蘇事業(yè)單位考試《綜合知識和能力素質(zhì)》(管理崗客觀題)
- 《臨床技術(shù)操作規(guī)范-放射醫(yī)學(xué)檢查技術(shù)分冊》
評論
0/150
提交評論