西南科技大學(xué)網(wǎng)絡(luò)教育系列課程高級語程序設(shè)計方案ppt課件_第1頁
西南科技大學(xué)網(wǎng)絡(luò)教育系列課程高級語程序設(shè)計方案ppt課件_第2頁
西南科技大學(xué)網(wǎng)絡(luò)教育系列課程高級語程序設(shè)計方案ppt課件_第3頁
西南科技大學(xué)網(wǎng)絡(luò)教育系列課程高級語程序設(shè)計方案ppt課件_第4頁
西南科技大學(xué)網(wǎng)絡(luò)教育系列課程高級語程序設(shè)計方案ppt課件_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、西南科技大學(xué)網(wǎng)絡(luò)教育系列課程西南科技大學(xué)網(wǎng)絡(luò)教育系列課程高級語程序設(shè)計高級語程序設(shè)計(Java)第十二章 Java Applet高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/vApplet概述vApplet是用Java編寫的小運用程序,它可以嵌入在HTML網(wǎng)頁中,并由支持Java的Web閱讀器來解釋執(zhí)行。vApplet最早是用于運用程序的發(fā)布,這一功能已被Java Web Start替代。v現(xiàn)廣泛用于主從架構(gòu)或網(wǎng)絡(luò)程序設(shè)計。Applet的任務(wù)原理高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/首先確定Applet的存在(*.class文件)。運用Applet,格式: Ap

2、plet和HTML定義調(diào)用的Applet程序名,留意全名和大小寫。Applet與HTML不在一個目錄,定義調(diào)用的Applet的途徑Applet程序顯示區(qū)的寬度和高度Applet與其他元素的程度和豎直邊距Applet的對齊方式Applet的名字。閱讀器不支持Applet時,顯示的替代文字。高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/ Applet的平安機制從Web上下載的java applet是在稱為沙箱 (sandbox)的平安環(huán)境中運轉(zhuǎn)。applet絕不能運轉(zhuǎn)任何本地可執(zhí)行程序。applet除了可以與從中下載它們的效力器進展通訊外,不能與任何主機通訊。applet不能讀寫本地計

3、算機的文件系統(tǒng)。applet不能獲取除版本等以外的任何關(guān)于本地計算機的信息。applet彈初式窗口都回帶有一個警告信息。applet可以運用簽名方式來獲取更大的權(quán)限。高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/Applet的生命周期下載下載實例化實例化init()init()初始化初始化start()start()啟動啟動stop()stop()暫停暫停destroy()destroy()終終止止啟動啟動轉(zhuǎn)入轉(zhuǎn)入后臺后臺重新重新激活激活退出退出高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/Applet主要方法根據(jù)執(zhí)行過程中發(fā)生的事件來定義生命周期,對于每個事件將自動調(diào)

4、用一種方法。init():初始化時調(diào)用,主要是創(chuàng)建所需求的對象、設(shè)置初始形狀、設(shè)置參數(shù)等。start():調(diào)用init方法之后自動調(diào)用這個方法。 stop():退出網(wǎng)頁時停頓執(zhí)行Applet程序。destroy():離線時釋放本對象及其相關(guān)的資源。paint(Graphics g):繪制Applet圖形。高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/Applet圖形的顯示和刷新 Applet圖形的顯示和刷新由三個方法完成:paint(),repaint(),update(),都是從java.awtponent類承繼來的 Applet圖形的顯示和刷新由一個獨立線程控制,稱為AWT線程

5、 假設(shè)Applet部分顯示內(nèi)容被其他窗口覆蓋,那么其他窗口移開或封鎖時,曾被覆蓋部分必需重畫,此時AWT線程會自動調(diào)用paint()方法 程序更新顯示內(nèi)容,可以運用repaint()方法通知系統(tǒng)要更新顯示的內(nèi)容,此時AWT線程會自動調(diào)用update()方法清空當(dāng)前畫面,然后調(diào)用paint()方法繪制新的內(nèi)容高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/Applet的創(chuàng)建 編寫Applet時,必需留意以下問題在Applet原程序文件中的開場,必需包含一些包,即有如下語句: import java.applet.* 或 import java.applet.Appletu必需有一個類聲

6、明為public,而且文件名必需與類名堅持一致,該類必需承繼自java.applet.Applet,完好的聲明如:upublic class MyFirstApplet extends Applet高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/Applet的構(gòu)造import java.awt.*;import java.applet.*;public class AppletClassName extends Appletpublic void init() /初始化變量、裝載圖片、讀取參數(shù)值等初始化變量、裝載圖片、讀取參數(shù)值等public void start() /啟動程序執(zhí)行

7、或恢復(fù)程序執(zhí)行啟動程序執(zhí)行或恢復(fù)程序執(zhí)行 public void stop() /掛起正在執(zhí)行的程序,暫停程序的執(zhí)行掛起正在執(zhí)行的程序,暫停程序的執(zhí)行 public void destroy() /終止程序的執(zhí)行釋放資源終止程序的執(zhí)行釋放資源 public void paint(Graphics g) /完成繪制圖形等操作完成繪制圖形等操作 高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/import java.awt.Graphics;import java.applet.Applet; public class JavaApplet extends Applet String p

8、rint_text; public void init() print_text = “Java Applet; public void paint(Graphics g) g.drawString(print_text, 20, 20); Applet例如重寫了Applet類的init( ) 方法。覆蓋了Applet類的paint( )方法。用于在屏幕上給定的位置繪制字符串高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/ Applet 和ApplicationApplet應(yīng)用程序應(yīng)用程序Applet基本上是為部署在基本上是為部署在Web上而上而設(shè)計的設(shè)計的應(yīng)用程序是為作為獨立程序工

9、作而應(yīng)用程序是為作為獨立程序工作而設(shè)計的設(shè)計的Applet是通過擴展是通過擴展 java.applet.Applet 類創(chuàng)建的類創(chuàng)建的應(yīng)用程序則不受這種限制應(yīng)用程序則不受這種限制Applet 通過通過appletviewer或在支持或在支持Java的瀏覽器上運行的瀏覽器上運行應(yīng)用程序使用應(yīng)用程序使用Java解釋器運行解釋器運行Applet 的執(zhí)行從的執(zhí)行從 init() 方法開始方法開始應(yīng)用程序的執(zhí)行從應(yīng)用程序的執(zhí)行從 main() 方法開方法開始始Applet必須至少包含一個必須至少包含一個 public 類,類,否則編譯器就會報告一個錯誤。在否則編譯器就會報告一個錯誤。在該類中沒有該類中沒

10、有 main( )方法。方法。對于應(yīng)用程序,對于應(yīng)用程序,public 類中必須包類中必須包括括main( ),否則無法運行。,否則無法運行。高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/網(wǎng)頁向Java Applet傳值l 在超文本中運用假設(shè)干個標(biāo)志把值傳送到Java Applet中,實現(xiàn)動態(tài)地向程序傳送信息,不用重新編譯程序,便于程序的維護和運用。如: u public String getParameter(String name)u如:String s1 = this. getParameter(“girl);高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/Java

11、 Applet中播放聲音l 用Java可以編寫播.au .aiff .wav .midi .rfm格式的音頻。l 在Java Applet中播放聲音,可以運用Applet的一個方法:l 靜態(tài)的方法:lnewAudioClip(URL url,String name)l 實例方法:lgetAudioClip(Url url,String name)l 處置聲音文件的方法lplay() 播放聲音文件 loop() 循環(huán)播放lstop() 停頓播放。高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/Java Applet中運用AWT組件l Applet類是容器類Container的間接子類。

12、l 可以在這個容器中添加組件,處置組件事件。l 目前的閱讀器僅僅支持JDK1.1版本中的類庫,Java Applet中只能運用JDK1.1版本公布的java.awt包中的組件。如:public void init() add(new Button(“Test); v Applet的默許規(guī)劃為FlowLayout高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/Java Applet中運用Swing組件l SDK1.4以后的版本,閱讀器中的JVM就會被更新為當(dāng)前SDK所帶的JVM。l 閱讀器就可以運用javax.awing包中的組件。l 運用javax.swing包中的組件時,Java

13、Applet的主類該當(dāng)是JApplet的子類。l JApplet是Applet的一個直接子類,在javax.swing包中。高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/l JApplet新特性:l 不可以把組件直接添加到JApplet容器中。l JApplet容器也含有一個稱為內(nèi)容面板的容器,該當(dāng)把組件添加到內(nèi)容面板中。l 不能為JApplet容器設(shè)置規(guī)劃,而該當(dāng)為JApplet容器的內(nèi)容面板設(shè)置規(guī)劃。l 內(nèi)容面板的默許規(guī)劃是BorderLayout規(guī)劃。l JApplet容器經(jīng)過調(diào)用方法:getContentPane(),得到內(nèi)容面板。高級語言程序設(shè)計高級語言程序設(shè)計(Java

14、) http:/Java Applet中繪制圖形繪制文本 運用drawString方法在屏幕上顯示字符串對象。 drawString(String s, int x, int y):從參數(shù)x、y指定的坐標(biāo)位置處,從左向右繪制參數(shù)s指定的字符串。 drawChars(char data ,int offset, int length, int x, int y):繪制data數(shù)組中的部分字符。length指定數(shù)組中要延續(xù)繪制的字符的個數(shù)。offset是首字符在數(shù)組中的位置 。高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/繪制直線drawLine(int x1,int y1,int x

15、2,int y2):繪制從起點(x1,y1)到終點(x2,y2)的直線段。繪制矩形 drawRect (int x,int y,int w,int h):繪制矩形。 fillRect (int x,int y,int w,int h):填充矩形。 矩形的左上角的坐標(biāo)由參數(shù)x、y指定,矩形的寬和高由參數(shù)w、h指定。 高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/繪制圓角矩形 drawRoundRect(int x,int y,int w,int h,int arcW,int arcH):繪制圓角矩形 fillRoundRect(int x,int y,int w,int h,int

16、arcW,int arcH):填充圓角矩形 參數(shù)arcW、arcH指定圓角的尺寸。繪制橢圓 drawOval(int x,int y,int w,int h):繪制橢圓。 fillOval(int x,int y,int w,int h):繪制填充橢圓。 x、y給出橢圓距x軸和y軸的間隔,參數(shù)w、h給出橢圓的寬和高。 高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/繪制圓弧 圓弧就是某個橢圓的一部分。 drawArc(int x,int y,int width,int height,int starAngle, int arcAngle):繪制圓弧。 fillArc(int x,in

17、t y,int width,int height,int starAngle,int arcAngle):填充圓弧。 x、y、width、heigth指定圓弧的位置和大小。 參數(shù)starAngle和 arcAngle的單位都是“度。 參數(shù)starAngle,arcAngle表示從starAngle的角度開場逆時針或順時針方向畫arcAngle度的弧。正值負(fù)值高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/Java Applet中繪制圖像l 圖像是矩形內(nèi)的一組像素。l Java支持兩種主要的圖像格式:l GIF JPEGl Applet類提供了一個重要的方法:l public Imag

18、e getImage(URL url,String name):前往可以被顯示在屏幕上的Image對象的援用,即將URL地址中,文件名為name的文件加載的內(nèi)存,并前往該內(nèi)存的首地址。 高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/l Java Applet顯示java目錄中的圖像的方法:l public URL getCodeBase():前往一個URL對象,該對象包含Java Applet 所在的目錄。u public URL getDocumentBase():前往一個嵌入Java Applet的網(wǎng)頁的URL對象。u public boolean drawImage(Imag

19、e img,int x,int y,ImageObserver observer):繪制img對象。ux,y是要繪制指定圖像的矩形的左上角所處的位置。uobserver是加載圖像時的圖像察看器。 高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/l Applet類曾經(jīng)實現(xiàn)了ImageObserver接口,它可以作為加載圖像時的圖像察看器。l 將this作為最后一個參數(shù)傳送給drawImage()便可將Applet對象傳送過去,l public void paint(Graphics g)l l g.drawImage(img,0,3,this);l l public boolean drawImage(Image img,int x,int y,int width ,int height , ImageObserver observer):在矩形內(nèi)繪制加載的圖像。高級語言程序設(shè)計高級語言程序設(shè)計(Java) http:/l 獲取圖像的屬性:l img.getHeight(this):獲取被加載的圖像的高。l img.getWidth(this):獲取被加載的圖像的寬。 例:public void init() img1 = getImage(getCodeBase(),tom.jpg); img2 = getImage(get

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論