Java語(yǔ)言程序設(shè)計(jì)(Applet、用戶(hù)界面設(shè)計(jì))ppt.ppt
《Java語(yǔ)言程序設(shè)計(jì)(Applet、用戶(hù)界面設(shè)計(jì))ppt.ppt》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(guān)《Java語(yǔ)言程序設(shè)計(jì)(Applet、用戶(hù)界面設(shè)計(jì))ppt.ppt(105頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1 Java語(yǔ)言程序設(shè)計(jì) 馬皓 2 第四章Applet及其應(yīng)用 Applet概述Applet類(lèi)Applet程序與HTML文件Applet的應(yīng)用 3 Applet概述 Java程序的兩種基本形式JavaApplication 應(yīng)用程序 可獨(dú)立運(yùn)行JavaApplet 小程序 嵌入在瀏覽器中運(yùn)行介紹Applet的結(jié)構(gòu)特點(diǎn) 實(shí)現(xiàn)方法 工作原理掌握Applet的編輯 編譯和運(yùn)行方法 4 一個(gè)Applet小程序的例子 importjava applet Applet importjava awt Graphics publicclassExam4 1extendsApplet Stringstr publicvoidinit str HereisanApplet publicvoidpaint Graphicsg g drawString str 100 100 5 HTML文件 超文本標(biāo)記語(yǔ)言 HTML WWW瀏覽器Applet小程序嵌入在 寫(xiě)入在HTML文件中從WWW服務(wù)器下載到本地WWW瀏覽器由WWW瀏覽器中的Java解釋器來(lái)運(yùn)行 6 HTML文件 實(shí)現(xiàn)過(guò)程Applet小程序編寫(xiě) 編譯 得到字節(jié)碼文件javacExam4 1 java嵌入到HTML文件中 保存為Exam4 1 html 7 HTML文件 瀏覽器打開(kāi)Exam4 1 html文件 8 Applet的特點(diǎn) 通常作為Applet類(lèi)的子類(lèi) 格式如下 publicclass類(lèi)名extendsApplet 嵌入在HTML文件中 利用WWW瀏覽器或Appletviewer來(lái)運(yùn)行利用了WWW瀏覽器或Appletviewer所提供的圖形用戶(hù)界面功能 9 Applet的工作原理 Applet源程序 字節(jié)碼文件 嵌入到HTML文件 WWW瀏覽器打開(kāi)該HTML文件 10 第四章Applet及其應(yīng)用 Applet概述Applet類(lèi)Applet程序與HTML文件Applet的應(yīng)用 11 Applet類(lèi)的繼承關(guān)系 java lang Object java awt Component java awt Container java awt Panel java applet Applet 默認(rèn)情況下 Applet類(lèi)使用FlowLayout布局管理器 12 Applet類(lèi)的主要方法 init 方法完成初始化操作在Applet程序第一次加載時(shí)調(diào)用 僅執(zhí)行一次start 方法啟動(dòng)Applet主線(xiàn)程運(yùn)行重啟時(shí)也被調(diào)用 reload或返回 paint 方法將結(jié)果輸出 繪制到界面上被自動(dòng)調(diào)用 啟動(dòng)后 窗口改變 repaint 調(diào)用 13 Applet類(lèi)的主要方法 stop 方法暫停Applet程序執(zhí)行destroy 方法終止Applet程序執(zhí)行 釋放所占用的資源 14 Applet類(lèi)的主要方法 importjava applet Applet importjava awt publicclassExamextendsApplet publicvoidinit 初始化Applet程序 publicvoidstart 啟動(dòng)Applet線(xiàn)程 publicvoidpaint Graphicsg 繪制輸出顯示信息 publicvoidstop 暫停線(xiàn)程 publicvoiddestroy 釋放系統(tǒng)資源 結(jié)束線(xiàn)程 15 第四章Applet及其應(yīng)用 Applet概述Applet類(lèi)Applet程序與HTML文件Applet的應(yīng)用 16 HTML文件 超文本標(biāo)記語(yǔ)言 HTML 和Html文件開(kāi)始和結(jié)束的標(biāo)記和WWW瀏覽器窗口標(biāo)題內(nèi)容的標(biāo)記和Html文件在瀏覽器窗口中顯示內(nèi)容的標(biāo)記和嵌入到Html文件中Applet程序的標(biāo)記 17 Applet程序的標(biāo)記 參數(shù) 18 Applet小程序 importjava applet Applet importjava awt publicclassExam4 3extendsApplet Stringstr intx y h Fontfnt publicvoidinit str getParameter string h Integer parseInt getParameter size x Integer parseInt getParameter x1 y Integer parseInt getParameter y1 fnt newFont TimesRoman Font BOLD h publicvoidpaint Graphicsg g setColor Color red g setFont fnt g drawString str x y 19 Applet小程序 20 第四章Applet及其應(yīng)用 Applet概述Applet類(lèi)Applet程序與HTML文件Applet的應(yīng)用 21 繪制圖形 設(shè)置字體java awt Font類(lèi)設(shè)置文本的字體 包括字型和字號(hào) 構(gòu)造方法publicFont Stringname intstyleintsize 設(shè)置顏色java awt Color類(lèi)控制顏色 Color類(lèi)已包含13個(gè)顏色常量構(gòu)造方法publicColor intr intg intb publicColor floatr1 floatg1 floatb1 22 繪制圖形 繪制文本繪制字符串publicvoiddrawString Strings intx inty 繪制字符publicvoiddrawString charc intoffset intnumberintx inty 繪制字節(jié)publicvoiddrawString byteb intoffset intnumberintx inty 23 Applet小程序 importjava applet Applet importjava awt publicclassExam4 4extendsApplet publicvoidpaint Graphicsg Fontfont1 font2 font3 font1 newFont Serif Font BOLD 20 font2 newFont Monospaced Font BOLD Font ITALIC 24 font3 newFont SansSerif Font PLAIN 16 g setFont font1 g drawString Serif20pointBOLD 30 20 g setFont font2 g drawString Monospaced24pointBOLD ITALIC 30 80 g setFont font3 g drawString SansSerif16pointPLAIN 30 50 intsize font2 getSize intstyle font1 getStyle Stringname font2 getName Stringstr name style size g drawString str 30 110 24 Applet小程序 25 Applet小程序 importjava applet Applet importjava awt publicclassExam4 6extendsApplet Fontfont1 newFont TimesRoman Font ITALIC 25 Fontfont2 newFont Braggadcoio Font BOLD 40 publicvoidpaint Graphicsg Stringstr IloveBeijing Colormycolor newColor 192 64 200 g setFont font1 g setColor mycolor g drawString str 30 40 Colordarker mycolor darker g setColor darker g drawString str 50 80 Colorbrighter mycolor brighter g setColor brighter g drawString str 70 120 g setFont font2 g setColor Color red g drawString str 30 170 g setColor Color white g drawString str 32 169 26 Applet小程序 27 繪制圖形 繪制幾何圖形畫(huà)直線(xiàn)voiddrawLine intx1 inty1 intx2 inty2 畫(huà)矩形voiddrawRect intx inty intwidth intheight voidfillRect intx inty intwidth intheight voidclearRect intx inty intwidth intheight voiddrawRoundRect intx inty intwidth intheight intarcWidth intarcHeight voiddraw3DRect intx inty intwidth intheight booleanb voidfill3DRect intx inty intwidth intheight booleanb 28 繪制圖形 繪制幾何圖形畫(huà)圓弧和橢圓voiddrawArc intx inty intwidth intheight intstartAngle intarcAngle voidfillArc intx inty intwidth intheight intstartAngle intarcAngle voiddrawOval intx inty intwidth intheight voidfillOval intx inty intwidth intheight 29 Applet小程序 importjava applet Applet importjava awt publicclassExam4 8extendsApplet publicvoidpaint Graphicsg intx0 10 y0 20 X 150 Y 80 L c intarc 0 N 10 doublexy 1 0 X Y N 2 g setColor Color red g fillRect x0 y0 X X for inti 0 i N i L int X 2 i xy arc Y i N c i 240 N g setColor newColor c c c g drawRoundRect int x0 i xy int y0 i xy L L arc arc g setColor Color blue g draw3DRect 200 y0 X X true g setColor Color green g fill3DRect 400 y0 Y Y false 30 Applet小程序 31 繪制圖形 繪制幾何圖形畫(huà)多邊形publicvoiddrawPolygon intxPoints intyPoints intPoints publicvoidfillPolygon intxPoints intyPoints intPoints publicvoiddrawPolygon Polygonp publicvoidfillPolygon Polygonp Polygon類(lèi)構(gòu)造方法Polygon Polygon intxPoints intyPoints intnumberOfPoints 32 演示圖像 定義圖像對(duì)象java awt Image類(lèi)圖像高度和寬度intgetHeight ImageObserverobserver intgetWidth ImageObserverobserver 獲取圖像信息方法ImagegetImage URLurl Stringname 顯示圖像的操作drawImage Imageimg intx inty ImageObserverobserver drawImage Imageimg intx inty intwidth intheight ImageObserverobserver 33 Applet小程序 importjava applet Applet importjava awt publicclassExam4 13extendsApplet publicvoidpaint Graphicsg Imagepic pic getImage getDocumentBase edonkey jpg intx0 10 y0 30 intw pic getWidth this inth pic getHeight this g drawImage pic x0 y0 w 8 h 8 this g drawImage pic x0 150 y0 w 12 h 12 this g drawImage pic x0 150 y0 100 w 15 h 15 this g drawImage pic x0 250 y0 30 int w 0 1 int h 0 2 this 34 Applet小程序 35 演示圖像 動(dòng)畫(huà)創(chuàng)建Image類(lèi)的對(duì)象數(shù)組drawImage Thread sleep 方法repaint 播放聲音publicvoidplay URLurl publicAudioClipgetAudio URLurl play 方法 loop 方法 stop 方法 36 第四章結(jié)束 37 概述事件處理基本控制組件布局設(shè)計(jì)常用容器組件 第五章圖形用戶(hù)界面設(shè)計(jì) 38 概述 用戶(hù)界面 UserInterface 用戶(hù)與計(jì)算機(jī)系統(tǒng) 各種程序 交互的接口 39 DigitalDecadeXMLWebServicesSmartdevices UserInterfaceEvolution KaiFuLeein2003 40 概述 JavaGUI的發(fā)展AWT Java1 0 AWT AbstractWindowToolkit 抽象窗口工具包概念 設(shè)計(jì) 實(shí)現(xiàn) about1month 字體設(shè)計(jì) 四種 界面顯示 二流水準(zhǔn) Swing LightweightComponents Java1 1 Swing wasthecodenameoftheprojectthatdevelopedthenewcomponentsSwingAPI 附加包 Add onpackage JFC Java2 JFC JavaFoundationClasses Java基礎(chǔ)類(lèi)JFCencompassagroupoffeaturestohelppeoplebuildgraphicaluserinterfaces GUIs JFC是指包含在Java2平臺(tái)內(nèi)的一整套圖形和用戶(hù)界面技術(shù)JFCwasfirstannouncedatthe1997JavaOnedeveloperconference 41 概述 JFC JavaFoundationClasses AWT AbstractWindowToolkit 一些用戶(hù)界面組件 Component 事件響應(yīng)模型 Event handlingmodel 布局管理器 Layoutmanager 繪圖和圖形操作類(lèi) 如Shape Font Color類(lèi)等SwingComponents Swing組件 JFC的核心 asetofGUIcomponentswithapluggablelookandfeel 包括已有的AWT組件 Button Scrollbar Label等 和更高層的組件 如treeview listbox tabbedpanes等 ThepluggablelookandfeelletsyoudesignasinglesetofGUIcomponentsthatcanautomaticallyhavethelookandfeelofanyOSplatform MicrosoftWindows Solaris Macintosh 基于Java1 1LightweightUIFramework 42 概述 JFC JavaFoundationClasses Java2D advanced2Dgraphicsandimaging Graphics Imaging PrintService打印文檔 圖形 圖像設(shè)定打印屬性和頁(yè)面屬性發(fā)現(xiàn)打印機(jī) IPP InternetPrintingProtocol 43 概述 JFC JavaFoundationClasses InputMethodFrameworktexteditingcomponentstocommunicatewithinputmethodsandimplementawell integratedtextinputuserinterface用Java語(yǔ)言開(kāi)發(fā)輸入法Accessibility 輔助功能 幫助傷殘人士screenreaders speechrecognitionsystems refreshablebrailledisplaysDrag DropDragandDropenablesdatatransferbothacrossJavaprogramminglanguageandnativeapplications betweenJavaprogramminglanguageapplications andwithinasingleJavaprogramminglanguageapplication 44 圖形用戶(hù)界面的構(gòu)成 什么是組件 構(gòu)成圖形用戶(hù)界面的元素 拿來(lái)即用用圖形表示 能在屏幕上顯示 能和用戶(hù)進(jìn)行交互 Button Checkbox Scrollbar Choice Frame 45 圖形用戶(hù)界面的構(gòu)成 一些特定的Java類(lèi)java awt包javax swing包容器組件 Container 可包含其他組件頂層容器 Applet Dialog Frame Window一般用途容器 Panel ScrollPane特定用途容器 InternalFrame非容器組件 必須要包含在容器中Button Checkbox Scrollbar Choice Canvas 46 圖形用戶(hù)界面的構(gòu)成 AWT組件 java awt包 47 圖形用戶(hù)界面的構(gòu)成 Swing組件 javax swing包java awt Component java awt Container java awt Window java awt Frame javax swing JFramejava awt Component java awt Container javax swing JComponent JComboBox JFileChooser JInternalFrameJLabel JList JMenuBar JOptionPane JPanelJPopupMenu JProgressBar JScrollBarJScrollPane JSeparator JSlider JSpinnerJSplitPane JTabbedPane JTableJTextComponent JToolBar JTree等 48 圖形用戶(hù)界面的實(shí)現(xiàn) 選取組件設(shè)計(jì)布局響應(yīng)事件應(yīng)用原則Swing比AWT提供更全面 更豐富的圖形界面設(shè)計(jì)功能Java2平臺(tái)支持AWT組件 但鼓勵(lì)用Swing組件主要講述AWT和Swing的圖形界面設(shè)計(jì) 49 圖形用戶(hù)界面的實(shí)現(xiàn) 簡(jiǎn)單實(shí)例 importjavax swing importjava awt event publicclassHelloWorldSwing publicstaticvoidmain String args JFramef newJFrame Swing1 JLabellabel newJLabel Hello f getContentPane add label f addWindowListener newWindowAdapter publicvoidwindowClosing WindowEvente System exit 0 f setSize 200 200 f setVisible true importjava awt importjava awt event publicclassHelloWorldAWT publicstaticvoidmain String args Framef newFrame AWT1 Labellabel newLabel Hello f add label f addWindowListener newWindowAdapter publicvoidwindowClosing WindowEvente System exit 0 f setSize 200 200 f setVisible true 50 概述事件處理基本控制組件布局設(shè)計(jì)常用容器組件 第五章圖形用戶(hù)界面設(shè)計(jì) 51 事件處理 界面設(shè)計(jì) 靜態(tài) 界面動(dòng)起來(lái) 通過(guò)事件觸發(fā)對(duì)象的響應(yīng)機(jī)制事件 鼠標(biāo)移動(dòng) 鼠標(biāo)點(diǎn)擊 鍵盤(pán)鍵入等事件處理機(jī)制事件源事件對(duì)象事件監(jiān)聽(tīng)者如何實(shí)現(xiàn)實(shí)現(xiàn) implements 事件監(jiān)聽(tīng)接口 interface 產(chǎn)生一個(gè)監(jiān)聽(tīng)器對(duì)象 Listener 監(jiān)聽(tīng)誰(shuí) 將該監(jiān)聽(tīng)器對(duì)象注冊(cè)到組件對(duì)象中編寫(xiě)事件響應(yīng)方法 52 事件處理 importjavax swing importjava awt importjava awt event publicclassBeeperextendsJAppletimplementsActionListener JButtonbutton publicvoidinit button newJButton ClickMe getContentPane add button BorderLayout CENTER button addActionListener this publicvoidactionPerformed ActionEvente System out println Clickmeonce java awt event ActionListener interface publicvoidactionPerformed ActionEvente javax swing JButton class publicvoidaddActionListener ActionListenerl 53 事件處理 事件分類(lèi) ActthatresultsintheeventListenertypeUserclicksabutton pressesReturnwhiletypinginatextfield orchoosesamenuitemActionListenerUserclosesaframe mainwindow WindowListenerUserpressesamousebuttonwhilethecursorisoveracomponentMouseListenerUsermovesthemouseoveracomponentMouseMotionListenerComponentbecomesvisibleComponentListenerComponentgetsthekeyboardfocusFocusListenerTableorlistselectionchangesListSelectionListener 54 事件處理 事件分類(lèi)interfacejava awt event ActionListenerpublicvoidactionPerformed ActionEvente interfacejava awt event WindowListenerpublicvoidwindowOpened WindowEvente publicvoidwindowClosing WindowEvente publicvoidwindowClosed WindowEvente publicvoidwindowIconified WindowEvente publicvoidwindowDeiconified WindowEvente publicvoidwindowActivated WindowEvente publicvoidwindowDeactivated WindowEvente 55 事件處理 事件分類(lèi)interfacejava awt event MouseListenerpublicvoidmouseClicked MouseEvente publicvoidmousePressed MouseEvente publicvoidmouseReleased MouseEvente publicvoidmouseEntered MouseEvente publicvoidmouseExited MouseEvente interfacejava awt event MouseMotionListenerpublicvoidmouseDragged MouseEvente InvokedwhenamousebuttonispressedonacomponentandthendraggedpublicvoidmouseMoved MouseEvente Invokedwhenthemousecursorhasbeenmovedontoacomponentbutnobuttonshavebeenpushed 56 事件處理 鼠標(biāo)事件 publicclassMouseEventDemo implementsMouseListener RegisterformouseeventsonblankArea TextArea andappletblankArea addMouseListener this publicvoidmousePressed MouseEvente saySomething Mousepressed ofclicks e getClickCount e publicvoidmouseReleased MouseEvente saySomething Mousereleased ofclicks e getClickCount e publicvoidmouseEntered MouseEvente saySomething Mouseentered e publicvoidmouseExited MouseEvente saySomething Mouseexited e publicvoidmouseClicked MouseEvente saySomething Mouseclicked ofclicks e getClickCount e voidsaySomething StringeventDescription MouseEvente textArea append eventDescription detectedon e getComponent getClass getName newline 57 事件處理 多個(gè)監(jiān)聽(tīng)器 Listener 多個(gè)組件 publicclassMultiListener implementsActionListener button1 addActionListener this button2 addActionListener this button2 addActionListener newEavesdropper bottomTextArea publicvoidactionPerformed ActionEvente topTextArea append e getActionCommand newline classEavesdropperimplementsActionListener publicvoidactionPerformed ActionEvente myTextArea append e getActionCommand newline 58 第五章圖形用戶(hù)界面設(shè)計(jì) 概述事件處理基本控制組件布局設(shè)計(jì)常用容器組件 59 AWT組件 java awt Component Button Canvas Choice CheckBox Label List TextComponent Scrollbar TextField TextArea Container ScrollPane Frame FileDialog Panel Window Dialog Applet 60 基本控制組件 使用步驟 創(chuàng)建基本控制組件類(lèi)的對(duì)象 指定對(duì)象屬性 將組件對(duì)象加入到制定容器的適當(dāng)位置 布局設(shè)計(jì) 創(chuàng)建事件對(duì)象的監(jiān)聽(tīng)者 Swing組件 javax swing 61 按鈕和標(biāo)簽 按鈕 Button 創(chuàng)建按鈕publicButton publicButton Stringlabel 常用方法publicStringgetLabel publicvoidsetLabel Stringlabel publicvoidsetActionCommand Strings publicStringgetActionCommand Strings 事件響應(yīng)java awt event ActionListener 接口 voidactionPerformed ActionEvente 62 按鈕和標(biāo)簽 標(biāo)簽 Label 創(chuàng)建標(biāo)簽publicLabel publicLabel Strings publicLabel Strings intalignment 常用方法publicStringgetText publicvoidsetText Strings publicvoidsetAlignment intalignment 事件響應(yīng)不引發(fā)事件 63 使用標(biāo)簽的例子 importjava awt importjava applet publicclassExam5 3extendsApplet Labellab1 lab2 TextFieldtext1 text2 publicvoidinit lab1 newLabel 輸入姓名 lab2 newLabel 輸入年齡 lab1 setBackground Color red lab2 setBackground Color green text1 newTextField 10 text2 newTextField 10 add lab1 add text1 add lab2 add text2 64 使用標(biāo)簽的例子 65 文本框和文本區(qū) 文本框 TextField TextComponent類(lèi)的子類(lèi)創(chuàng)建文本框publicTextField publicTextField intsize publicTextField Strings publicTextField Strings intsize 常用方法publicvoidsetText Strings publicStringgetText publicvoidsetEchochar charc publicvoidsetEditable booleanb 事件響應(yīng)java awt event TextListener 接口 java awt event ActionListener 接口 66 文本框和文本區(qū) 文本區(qū) TextArea TextComponent類(lèi)的子類(lèi)創(chuàng)建文本區(qū)publicTextArea publicTextArea Strings publicTextArea introws intcolumns publicTextArea Strings introws intcolumns publicTextArea Strings introws intcolumns intscrollbars SCROLLBARS BOTH SCROLLBARS NONESCROLLBARS VERTICAL ONLYSCROLLBARS HORIZONTAL ONLY常用方法publicvoidappend Strings publicvoidinsert Strings intindex pubilcvoidreplaceRange Strings intstart intend 事件響應(yīng)java awt event TextListener 接口 voidtextValueChanged TextEvente 67 使用文本框的例子 importjava awt importjava awt event importjava applet publicclassExam5 4extendsAppletimplementsActionListener Labellab1 lab2 lab3 TextFieldtext1 text2 text3 Stringstr inti floatf publicvoidinit lab1 newLabel 輸入整形數(shù) add lab1 text1 newTextField 0 30 text1 addActionListener this add text1 lab2 newLabel 輸入浮點(diǎn)數(shù) add lab2 text2 newTextField 0 0 30 text2 addActionListener this add text2 lab3 newLabel 輸入字符串 add lab3 text3 newTextField 0 0 30 text3 addActionListener this add text3 68 使用文本框的例子 publicvoidactionPerformed ActionEvente i Integer parseInt text1 getText f Float valueOf text2 getText floatValue str text3 getText repaint publicvoidpaint Graphicsg g drawString 整形數(shù) i 20 120 g drawString 浮點(diǎn)數(shù) f 20 150 g drawString 字符串 str 20 180 69 單復(fù)選框和列表 復(fù)選框 Checkbox 創(chuàng)建復(fù)選框publicCheckbox publicCheckbox Strings publicTextField Strings booleanstate 常用方法publicbooleangetState publicvoidsetState booleanb publicvoidsetLabel Strings publicStringgetLabel 事件響應(yīng)java awt event ItemListener 接口 voiditemStateChanged ItemEvente 70 單復(fù)選框和列表 單選按鈕組 CheckboxGroup 創(chuàng)建單選按鈕組publicCheckbox Stringlabel booleanstate CheckboxGroupgroup publicCheckbox Stringlabel CheckboxGroupgroup booleanstate 常用方法與復(fù)選框相同事件響應(yīng)與復(fù)選框相同 71 單復(fù)選框和列表 列表 List 創(chuàng)建列表publicList publicList intn publicList intn booleanb 常用方法publicvoidadd Strings publicvoidadd Strings intn publicvoidremove intn publicvoidremoveAll publicintgetSelectedIndex publicStringgetSelectedItem 事件響應(yīng)java awt event ItemListener 接口 java awt event ActionListener 接口 72 下拉列表和滾動(dòng)條 下拉列表 Choice 創(chuàng)建下拉列表publicChoice 常用方法publicintgetSelectedIndex publicStringgetSelectedItem publicvoidselect intindex publicvoidselect Stringitem publicvoidadd Strings publicvoidadd Strings intindex publicvoidremove intindex publicvoidremove Stringitem publicvoidremoveAll 事件響應(yīng)java awt event ItemListener 接口 73 下拉列表和滾動(dòng)條 滾動(dòng)條 Scrollbar 創(chuàng)建滾動(dòng)條publicScrollbar intorientation intvalue intvisible intminimum intmaximum 常用方法publicvoidsetUnitIncrement intn publicvoidsetBlockIncrement intn publicintgetUnitIncrement publicintgetBlockIncrement publicintgetValue 事件響應(yīng)java awt event AdjustmentListener 接口 voidadjustmentValueChanged AdjustmentEvente 74 使用下列列表的例子 importjava awt importjava awt event importjava applet publicclassExam5 8extendsAppletimplementsItemListener Choicecho TextFieldtext publicvoidinit text newTextField 10 cho newChoice cho add red cho add yellow cho add green cho add blue add cho add text cho addItemListener this publicvoiditemStateChanged ItemEvente if e getItemSelectable cho Strings cho getSelectedItem text setText s 75 使用下列列表例子 76 畫(huà)布 畫(huà)布 Canvas 創(chuàng)建畫(huà)布publicCanvas 常用方法publicvoidsetSize publicvoidpaint Graphicsg 事件響應(yīng)java awt event MouseMotionListener 接口 java awt event MouseListener 接口 java awt event KeyListener 接口 77 概述事件處理基本控制組件布局設(shè)計(jì)常用容器組件 第五章圖形用戶(hù)界面設(shè)計(jì) 78 布局管理 決定組件在界面中所處的位置和大小六種布局管理器 LayoutManager 兩種簡(jiǎn)單布局java awt FlowLayout JDK1 0 java awt GridLayout JDK1 0 兩種特定用途布局java awt BorderLayout JDK1 0 java awt CardLayout JDK1 0 兩種靈活布局java awt GridBagLayout JDK1 0 javax swing BoxLayout 79 布局管理 FlowLayout java awt FlowLayout 所有組件從左往右排成一行一行排滿(mǎn)后轉(zhuǎn)到下一行從左往右排居中 左對(duì)齊 右對(duì)齊 importjava awt importjavax swing publicclassFlowWindowextendsJFrame publicFlowWindow ContainercontentPane getContentPane contentPane setLayout newFlowLayout contentPane add newJButton Button1 contentPane add newJButton 2 contentPane add newJButton Button3 contentPane add newJButton Long NamedButton4 contentPane add newJButton Button5 publicstaticvoidmain Stringargs FlowWindowwin newFlowWindow win setTitle FlowLayout win pack win setVisible true publicvoidpack CausesthisWindowtobesizedtofittheperferredsizeandlayoutsofitssubcomponents 80 布局管理 GridLayout java awt GridLayout 將空間劃分為由行和列組成的網(wǎng)格單元 每個(gè)單元放一個(gè)組件 網(wǎng)格單元大小相同 寬度和高度 指定行數(shù)和列數(shù) importjava awt importjavax swing publicclassGridWindowextendsJFrame publicGridWindow ContainercontentPane getContentPane contentPane setLayout newGridLayout 0 2 contentPane add newJButton Button1 contentPane add newJButton 2 contentPane add newJButton Button3 contentPane add newJButton Long NamedButton4 contentPane add newJButton Button5 publicstaticvoidmain Stringargs GridWindowwin newGridWindow win setTitle FlowLayout win pack win setVisible true publicGridLayout introws intcols rowsandcolscanbezero whichmeansthatanynumberofobjectscanbeplacedinaroworinacolumn 81 布局管理 BorderLayout java awt BorderLayout BorderLayoutisthedefaultlayoutmanagerforeverycontentpane上北 下南 左西 右東 中 ContainercontentPane getContentPane contentPane setLayout newBorderLayout contentPane add newJButton Button1 NORTH BorderLayout NORTH contentPane add newJButton 2 CENTER BorderLayout CENTER contentPane add newJButton Button3 WEST BorderLayout WEST contentPane add newJButton Long NamedButton4 SOUTH BorderLayout SOUTH contentPane add newJButton Button5 EAST BorderLayout EAST 82 布局管理 CardLayout java awt CardLayout 兩個(gè)或多個(gè)組件共享相同的顯示空間 在不同的時(shí)間顯示不同的組件 83 布局管理 GridBagLayout java awt GridBagLayout 最精細(xì) 最靈活的布局管理將空間劃分為由行和列組成的網(wǎng)格單元 每個(gè)單元放一個(gè)組件 網(wǎng)格單元大小可以不同 寬度和高度 84 布局管理 BoxLayout javax swing BoxLayout 將組件放在一行或一列 JPaneljpv newJPanel jpv setLayout newBoxLayout jpv BoxLayout Y AXIS for inti 0 i 5 i jpv add newJButton i JPaneljph newJPanel jph setLayout newBoxLayout jph BoxLayout X AXIS for inti 0 i 5 i jph add newJButton i Containercp getContentPane cp add BorderLayout EAST jpv cp add BorderLayout SOUTH jph 容器的嵌套 面板的嵌套 相互包含 85 第五章圖形用戶(hù)界面設(shè)計(jì) 概述事件處理基本控制組件布局設(shè)計(jì)常用容器組件 86 概述 容器可包含其他組件和容器Container類(lèi)的子類(lèi)無(wú)邊框容器 Panel Applet有邊框容器 Window Frame Dialog FieldDialog可自動(dòng)處理滾動(dòng)操作的容器 Scrollpane Container ScrollPane Frame FileDialog Panel Window Dialog Applet 87 容器 常用方法添加組件 add 獲取制定的組件getComponent intx inty getComponent intindex 從容器中移出組件remove Componentc remove intindex removeAll 設(shè)置容器布局 setLayout 88 容器 面板 Panel 無(wú)邊框容器順序布局 FlowLayout Applet子類(lèi) 89 窗口和菜單 java awt Window 最頂層容器Window Framef show BorderLayout布局java awt Frame 有邊框容器構(gòu)造方法Frame Frame Stringtitle BorderLayout布局常用方法getTitle setTitle Strings setVisible booleanb setBounds inta intb intwidth intheight setBackground Colorc pack setSize intwidth intheight dispose add remove 90 使用Frame容器的例子 importjava awt importjava awt event publicclassExam5 18 publicstaticvoidmain Stringargs MyFramemf newMyFrame classMyFrameextendsFrameimplementsActionListener MouseListener WindowListener Buttonbut Stringstr StringmouseClickCnt 單擊 DimensioncurrentPos newDimension intclickCnt 0 MyFrame super 我制作的窗口 but newButton 按鈕 setLayout newFlowLayout add but but addActionListener this- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來(lái)的問(wèn)題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
14.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開(kāi)word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- Java 語(yǔ)言程序設(shè)計(jì) Applet 用戶(hù) 界面設(shè)計(jì) ppt
鏈接地址:http://m.appdesigncorp.com/p-7201354.html