九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

歡迎來(lái)到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁(yè) 裝配圖網(wǎng) > 資源分類(lèi) > PPT文檔下載  

java-10圖形用戶(hù)界面.ppt

  • 資源ID:7260588       資源大?。?span id="24d9guoke414" class="font-tahoma">375.50KB        全文頁(yè)數(shù):43頁(yè)
  • 資源格式: PPT        下載積分:9.9積分
快捷下載 游客一鍵下載
會(huì)員登錄下載
微信登錄下載
三方登錄下載: 微信開(kāi)放平臺(tái)登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要9.9積分
郵箱/手機(jī):
溫馨提示:
用戶(hù)名和密碼都是您填寫(xiě)的郵箱或者手機(jī)號(hào),方便查詢(xún)和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號(hào):
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開(kāi),此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁(yè)到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無(wú)水印,預(yù)覽文檔經(jīng)過(guò)壓縮,下載后原文更清晰。
5、試題試卷類(lèi)文檔,如果標(biāo)題沒(méi)有明確說(shuō)明有答案則都視為沒(méi)有答案,請(qǐng)知曉。

java-10圖形用戶(hù)界面.ppt

Java程序設(shè)計(jì) 第10章圖形用戶(hù)界面 10 1AWT組件 10 1 1圖形用戶(hù)界面概述圖形用戶(hù)界面 graphicaluserinterface GUI 處理圖形用戶(hù)界面的類(lèi)庫(kù)主要是java awt包和javax swing包 AWT是abstractwindowtoolkit 抽象窗口工具集 的縮寫(xiě) javax swing包是JDK1 2以后版本所引入的圖形用戶(hù)界面類(lèi)庫(kù) 功能更強(qiáng) 界面更富 設(shè)計(jì)和實(shí)現(xiàn)圖形用戶(hù)界面的工作主要有以下幾點(diǎn) 1 創(chuàng)建組件 Component 創(chuàng)建組成界面的各種元素 如按鈕 文本框等 2 指定布局 Layout 根據(jù)具體需要排列它們的位置關(guān)系 3 響應(yīng)事件 Event 定義圖形用戶(hù)界面的事件和各界面元素對(duì)不同事件的響應(yīng) 從而實(shí)現(xiàn)圖形用戶(hù)界面與用戶(hù)的交互功能 10 1 2AWT組件分類(lèi) Java中構(gòu)成圖形用戶(hù)界面的各種元素 稱(chēng)為組件 Component 組件分為容器 Container 類(lèi)和非容器類(lèi)組件兩大類(lèi)容器又分為頂層容器和非頂層容器兩大類(lèi) 重要的組件的繼承關(guān)系 10 1 3Component的方法 Component類(lèi)是所有組件和容器的抽象父類(lèi) 其中定義了一些每個(gè)容器和組件都可能用到的方法 10 2布局管理 Java awt包中共定義了五種布局管理器 每個(gè)布局管理器對(duì)應(yīng)一種布局策略 分別是FlowLayoutBorderLayoutCardLayoutGridLayoutGridBagLayout FlowLayout布局管理器 FlowLayout是Panel類(lèi)的默認(rèn)布局管理器FlowLayout布局對(duì)組件逐行定位 行內(nèi)從左到右 一行排滿(mǎn)后換行默認(rèn)對(duì)齊方式為居中對(duì)齊不改變組件的大小 按組件原有尺寸顯示組件可在構(gòu)造方法中設(shè)置不同的組件間距 行距及對(duì)齊方式 FlowLayout舉例 范例 TestFlowLayout java FlowLayout的構(gòu)造方法 newFlowLayout FlowLayout RIGHT 20 40 右對(duì)齊 組件之間水平間距20個(gè)像素 豎直間距40個(gè)像素 newFlowLayout FlowLayout LEFT 左對(duì)齊 水平和豎直間距為缺省值 5 newFlowLayout 使用缺省的居中對(duì)齊方式 水平和豎直間距為缺省值 5 BorderLayout布局管理器 BorderLayout是Frame類(lèi)的默認(rèn)布局管理器BorderLayout將整個(gè)容器的布局劃分成東 西 南 北 中五個(gè)區(qū)域 組件只能被添加到指定的區(qū)域如不指定組件的加入部位 則默認(rèn)加入到Center區(qū)域每個(gè)區(qū)域只能加入一個(gè)組件 如加入多個(gè) 則先前加入的組件會(huì)被遺棄 BorderLayout布局管理器 BorderLayout型布局容器尺寸縮放原則北 南兩個(gè)區(qū)域只能在水平方向縮放 寬度可調(diào)整 東 西兩個(gè)區(qū)域只能在垂直方向縮放 高度可調(diào)整 中部可在兩個(gè)方向上縮放 North South West Eest Center BorderLayout舉例 范例 estBorderLayout java GridLayout布局管理器 GridLayout型布局管理器將布局劃分成規(guī)則的矩形網(wǎng)格 每個(gè)單元格區(qū)域大小相等 組件被添加到每個(gè)單元格中 先從左到右添滿(mǎn)一行后換行 再?gòu)纳系较?在GridLayout構(gòu)造方法中指定分割的行數(shù)和列數(shù) newGridLayout 3 4 GridLayout舉例 范例 TestGridLayout java CardLayout布局管理器 CardLayout布局管理器能夠幫助用戶(hù)處理兩個(gè)以至更多的成員共享同一顯示空間 就好象一疊卡片摞在一起 注意 在一張卡片中只能顯示一個(gè)組件 因此可以使用容器嵌套方法顯示多個(gè)組件 addLayoutComponent first next last方法 GridBagLayout布局管理器 AWT中最靈活 最復(fù)雜的布局管理器 各組件所占空間可以不相同且靈活規(guī)定 參見(jiàn)參考書(shū)及API文檔 非考試內(nèi)容 很少用 實(shí)際項(xiàng)目開(kāi)發(fā)做界面時(shí)可能會(huì)用到 容器的嵌套使用舉例 范例 NestedContainer java 默認(rèn)布局管理器 Component Container Window Panel Frame Dialog Applet BorderLayout FlowLayout 布局管理器總結(jié) 1 FrameFrame是一個(gè)頂級(jí)窗口 Frame的缺省布局管理器為BorderLayout PanelPanel無(wú)法單獨(dú)顯示 必須添加到某個(gè)容器中 Panel的缺省布局管理器為FlowLayout 當(dāng)把Panel作為一個(gè)組件添加到某個(gè)容器中后 該P(yáng)anel仍然可以有自己的布局管理器 因此 可以利用Panel使得BorderLayout中某個(gè)區(qū)域顯示多個(gè)組件 布局管理器總結(jié) 2 在程序中安排組件的位置和大小時(shí) 應(yīng)注意 容器中的布局管理器負(fù)責(zé)各個(gè)組件的大小和位置 因此用戶(hù)無(wú)法在這種情況下設(shè)置組件的這些屬性 如果試圖使用Java語(yǔ)言提供的setLocation setSize setBounds 等方法 則都會(huì)被布局管理器覆蓋 如果用戶(hù)確實(shí)需要親自設(shè)置組件大小或位置 則應(yīng)取消該容器的布局管理器 方法為 setLayout null 10 3事件處理 10 3 1事件及事件監(jiān)聽(tīng)器Java中的圖形用戶(hù)界面中 對(duì)于用戶(hù)的鼠標(biāo) 鍵盤(pán)操作發(fā)生反應(yīng) 就必須進(jìn)行事件處理 這些鼠標(biāo) 鍵盤(pán)操作等統(tǒng)稱(chēng)為事件 Event 對(duì)這些事件作出響應(yīng)的程序 稱(chēng)為事件處理器 Eventhandler 1 事件類(lèi)AWTEvent 事件類(lèi)中包含有事件相關(guān)的信息 最重要的有 1 事件源 即產(chǎn)生事件的組件 可能通過(guò)getSource 來(lái)得到 2 事件的具體情況 如MouseEvent的getX getY 方法得到鼠標(biāo)的坐標(biāo) KeyEvent的getKeyChar 得到當(dāng)前的字符等 2 事件處理器WTEventListener 事件處理器 Eventhandler 是對(duì)事件進(jìn)行處理的程序 在編程時(shí)通過(guò)實(shí)現(xiàn)事件監(jiān)聽(tīng)器 EventListener 來(lái)實(shí)現(xiàn)對(duì)事件的處理 事件監(jiān)聽(tīng)器是一些事件的接口 這些接口是java awt AWTEventListener的子類(lèi) 接口中含有相關(guān)的方法 如 MouseMotionListener是對(duì)鼠標(biāo)移動(dòng)事件的處理的接口 它含有兩個(gè)重要的方法 voidmouseDragged MouseEvente 處理鼠標(biāo)拖動(dòng)的方法voidmouseMoved MouseEvente 處理鼠標(biāo)移動(dòng)的方法在這些方法中 都帶一個(gè)事件對(duì)象作為參數(shù) 如MouseMotionListener的兩個(gè)方法都帶MouseEvent參數(shù) 程序中可以根據(jù)這個(gè)參數(shù)可以得到有關(guān)事件的詳細(xì)信息 10 3 2事件監(jiān)聽(tīng)器的注冊(cè) 注冊(cè)事件監(jiān)聽(tīng)器只需要使用組件對(duì)象的addXXXXEvent方法 它可以指明該對(duì)象感興趣的事件監(jiān)聽(tīng)器 即實(shí)現(xiàn)了某個(gè)AWTEventListener子接口的對(duì)象 這樣 當(dāng)事件源發(fā)生了某種類(lèi)型的事件時(shí) 則觸發(fā)事先已注冊(cè)過(guò)的監(jiān)聽(tīng)器中相應(yīng)的處理程序 一個(gè)對(duì)象上可注冊(cè)多個(gè)監(jiān)聽(tīng)器多個(gè)對(duì)象可注冊(cè)同一個(gè)監(jiān)聽(tīng)器 10 3 3事件適配器 用實(shí)現(xiàn)接口的方法 必須實(shí)現(xiàn)接口所規(guī)定的方法 如WindowListener有7個(gè)方法 即使一些方法不做任何事情 也得書(shū)寫(xiě) 為簡(jiǎn)化編程 針對(duì)一些事件監(jiān)聽(tīng)器接口定義了相應(yīng)的實(shí)現(xiàn)類(lèi) 事件適配器類(lèi) Adapter 在適配器類(lèi)中 實(shí)現(xiàn)了相應(yīng)監(jiān)聽(tīng)器接口中所有的方法 但不做任何事情 事件適配器包括如下幾種 1 ComponentAdapter 組件適配器 2 ContainerAdapter 容器適配器 3 FocusAdapter 焦點(diǎn)適配器 4 KeyAdapter 鍵盤(pán)適配器 5 MouseAdapter 鼠標(biāo)適配器 6 MouseMotionAdapter 鼠標(biāo)運(yùn)動(dòng)適配器 7 WindowAdapter 窗口適配器 程序中可以繼承事件適配器類(lèi) 并只重寫(xiě)所需要的方法 而不用寫(xiě)那些空的方法體 10 3 4內(nèi)部類(lèi)及匿名類(lèi)在事件處理中的應(yīng)用 在Java事件處理程序中 由于與事件相關(guān)的事件監(jiān)聽(tīng)器的類(lèi)經(jīng)常局限于一個(gè)類(lèi)的內(nèi)部 所以經(jīng)常使用內(nèi)部類(lèi) 而且定義的內(nèi)部類(lèi)在事件處理中的使用就實(shí)例化一次 在其他地方不會(huì)用到該類(lèi) 所以不需要類(lèi)名 所以經(jīng)常使用匿名類(lèi) 在類(lèi)的內(nèi)部定義事件類(lèi) privateclassInnerMonitorimplementsMouseMotionListener MouseListener 使用匿名類(lèi)的例子 f addMouseMotionListener newMouseMotionListener publicvoidmouseDragged MouseEvente Strings 位置 e getX e getY tf setText s publicvoidmouseMoved MouseEvente f addWindowListener newWindowAdapter publicvoidwindowClosing WindowEvente System exit 0 其中用匿名類(lèi)實(shí)現(xiàn)了MouseMotionListener及繼承了WindowAdapter 同時(shí)實(shí)例化了這個(gè)匿名類(lèi)的對(duì)象 10 4常用組件的使用 10 4 1標(biāo)簽 按鈕與動(dòng)作事件10 4 2文本框 文本區(qū)域與文本事件10 4 3單 復(fù)選按鈕 列表與選擇事件10 4 4調(diào)整事件與滾動(dòng)條10 4 5鼠標(biāo) 鍵盤(pán)事件與畫(huà)布10 4 6Frame與窗口事件10 4 7Panel與容器事件10 4 8組件事件 焦點(diǎn)事件與對(duì)話(huà)框參見(jiàn)相應(yīng)的例子 10 5繪圖 圖形和動(dòng)畫(huà) 10 5 1繪制圖形繪制圖形和文字將要用類(lèi)Graphics 它相當(dāng)于組件的繪圖環(huán)境 利用它可以進(jìn)行各種繪圖操作 獲得Graphics對(duì)象常有兩種方法一是使用組件的getGraphics 方法來(lái)在Applet及Application程序中 常用Canvas及Applet對(duì)象來(lái)進(jìn)行繪圖 它們的paint 方法也會(huì)帶一個(gè)Graphics參數(shù) 通過(guò)覆蓋paint 方法 就可以繪制各種圖形 Graphics的繪圖方法 畫(huà)三維矩形draw3DRect intx inty intwidth intheight booleanraised 畫(huà)弧drawArc intx inty intwidth intheight intstartAngle intarcAngle 畫(huà)文字drawBytes byte data intoffset intlength intx inty 畫(huà)文字drawChars char data intoffset intlength intx inty 畫(huà)直線(xiàn)drawLine intx1 inty1 intx2 inty2 畫(huà)橢圓drawOval intx inty intwidth intheight 畫(huà)多邊形drawPolygon int xPoints int yPoints intnPoints 畫(huà)多邊形drawPolygon Polygonp 畫(huà)折線(xiàn)drawPolyline int xPoints int yPoints intnPoints 畫(huà)矩形drawRect intx inty intwidth intheight 畫(huà)圓角矩形drawRoundRect intx inty intwidth intheight intarcWidth intarcHeight 畫(huà)文字drawString AttributedCharacterIteratoriterator intx inty 畫(huà)文字drawString Stringstr intx inty 畫(huà)填充三維矩形fill3DRect intx inty intwidth intheight booleanraised 畫(huà)填充弧fillArc intx inty intwidth intheight intstartAngle intarcAngle 畫(huà)填充橢圓fillOval intx inty intwidth intheight 畫(huà)填充多邊形fillPolygon int xPoints int yPoints intnPoints 畫(huà)填充多邊形fillPolygon Polygonp 畫(huà)填充矩形fillRect intx inty intwidth intheight 畫(huà)填充圓角矩形fillRoundRect intx inty intwidth intheight intarcWidth intarcHeight 幾個(gè)輔助類(lèi) 除了Graphics類(lèi) Java中還定義了其他一些用來(lái)表示幾何圖形的類(lèi) 對(duì)繪制用戶(hù)自定義成分也很有幫助 例如 利用Point表示一個(gè)像素點(diǎn) 利用Dimension類(lèi)表示寬和高 利用Rectangle類(lèi)表示一個(gè)矩形 利用Polygon類(lèi)表示一個(gè)多邊形 利用Color類(lèi)表示顏色等 10 5 2顯示文字 Graphics類(lèi)的方法drawString 可以在屏幕的指定位置顯示一個(gè)字符串一個(gè)Font類(lèi)的對(duì)象表示了一種字體顯示效果 包括字體類(lèi)型 字型和字號(hào) 下面的語(yǔ)句用于創(chuàng)建一個(gè)Font類(lèi)的對(duì)象 FontMyFont newFont TimesRoman Font BOLD 12 如果希望使用該Font對(duì)象 則可以利用Graphics類(lèi)的setFont 方法 10 5 3控制顏色 Color類(lèi)中定義有如下的三種構(gòu)造函數(shù) publicColor intRed intGreen intBlue publicColor floatRed floatGreen floatBlue publicColor intRGB 還可以直接使用Color類(lèi)中定義好的顏色常量Color cyanred等 10 5 4顯示圖像 利用Graphics類(lèi)的drawImage 方法顯示圖像 10 5 5實(shí)現(xiàn)動(dòng)畫(huà)效果 動(dòng)畫(huà)曾是JavaApplet最吸引人的特性之一 用Java實(shí)現(xiàn)動(dòng)畫(huà)的原理與放映動(dòng)畫(huà)片類(lèi)似 取若干相關(guān)的圖像或圖片 順序 連續(xù)地在屏幕上先顯示 后擦除 循環(huán)往復(fù)就可以獲得動(dòng)畫(huà)的效果 10 6Applet Applet 小程序 是一種很重要的Java程序 是工作在Internet的瀏覽器上的Java程序 編寫(xiě)Applet小程序必須要用到j(luò)ava applet包中的Applet類(lèi) java applet Applet是java awt Panel的子類(lèi) 如圖10 20所示 Applet的默認(rèn)布局是FlowLayout 10 6 1Applet的基本工作原理 編譯好的字節(jié)碼文件 class文件 保存在特定的WWW服務(wù)器上 同一個(gè)或另一個(gè)WWW服務(wù)器上保存著嵌入了該字節(jié)碼文件名的HTML文件 當(dāng)某一個(gè)瀏覽器向服務(wù)器請(qǐng)求下載嵌入了Applet的HTML文件時(shí) 當(dāng)瀏覽器遇到HTML文件中的特殊標(biāo)記 表明它嵌有一個(gè)Applet時(shí) 瀏覽器會(huì)根據(jù)這個(gè)Applet的名字和位置自動(dòng)把字節(jié)碼從WWW服務(wù)器上下載到本地 并利用瀏覽器本身?yè)碛械腏ava解釋器直接執(zhí)行該字節(jié)碼 10 6 2Applet類(lèi) Applet類(lèi)的主要方法init start paint stop destroy 10 7SwingGUI組件 Swing是第二代GUI開(kāi)發(fā)工具集 javax swing包被列入Java的基礎(chǔ)類(lèi)庫(kù) JFC Swing建立在AWT Java2D Accessibility等的基礎(chǔ)上與AWT相比 Swing具有更好的可移植性 Swing提供了更完整的組件 增加了許多功能 此外 Swing引入了許多新的特性和能力 10 8基于GUI的應(yīng)用程序 10 8 1使用可視化設(shè)計(jì)工具10 8 2菜單的定義與使用10 8 3菜單 工具條及對(duì)話(huà)框的應(yīng)用參見(jiàn)相應(yīng)的例子程序

注意事項(xiàng)

本文(java-10圖形用戶(hù)界面.ppt)為本站會(huì)員(max****ui)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請(qǐng)重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話(huà):18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶(hù)上傳的文檔直接被用戶(hù)下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!