




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
Applet小程序2教學(xué)目的要求了解Applet小程序與其他程序的差別;掌握Applet程序中各種方法的使用;熟練編制出基于Web的Applet程序;通過技能訓(xùn)練,掌握Applet程序的調(diào)試方法及應(yīng)用技巧。
3本章內(nèi)容1Applet概述2Applet與HTML3Applet應(yīng)用41Applet概述1.1Applet小程序簡介
Java小應(yīng)用程序(JavaApplet)是使用Java語言編寫的一段代碼,它能夠在瀏覽器環(huán)境中運行。
Applet與Application地主要區(qū)別在于它們的執(zhí)行方式不同:Application是使用命令行命令直接運行,從其main()方法開始運行的;而Applet則是在瀏覽器中運行的,首先必須創(chuàng)建一個HTML文件,通過編寫HTML語言代碼告訴瀏覽器載入何種Applet以及如何運行,再在瀏覽器中給出該HTML文件的URL地址即可,Applet本身的執(zhí)行過程也較Application復(fù)雜。51Applet概述
回憶一下小應(yīng)用程序的書寫格式
importjava.applet.*;publicclassMyAppletextendsApplet{…;}
每一個小應(yīng)用程序都繼承自java.applet.Applet類,并且每個小應(yīng)用都有一個主程序類,之前必須加上public。6Applet概述appletBrowserSERVER本地程序fileSERVERlocalconnectionconnectionapplet被下載的與applet無關(guān)的本地方法小應(yīng)用程序的限制71Applet概述一個Applet小程序的簡單例子:importjava.applet.*;importjava.awt.*;publicclassHelloAppletextendsApplet{publicStrings;publicvoidinit(){s=newString(“我的第一個Applet程序!”);}publicvoidpaint(Graphicsg){g.drawString(s,25,25);}}<HTML><HEAD><TITLE>我的第一個applet</TITLE></HEAD><appletcode="HelloApplet.class"width=300height=300></applet></HTML>HelloApplet.java8HTML代碼的基本結(jié)構(gòu)在WWW中,每一顯示單位稱為一個網(wǎng)頁,該網(wǎng)頁是由HTML語言(HyperTextMarkupLanguage,超文本標(biāo)記語言)編寫而成的,HTML是一種分層語言,各種標(biāo)記均成對出現(xiàn),用“<>”括起來,開始和結(jié)束標(biāo)記的區(qū)別在于結(jié)束標(biāo)記以“/”開頭,標(biāo)記字母忽略大小寫。每個頁面都必須包含相同的整體結(jié)構(gòu),它的結(jié)構(gòu)如下:<HTML><HEAD>……<TITLE>……</TITLE></HEAD><BODY>……<HR></BODY></HTML>其中:(1)HTML標(biāo)記是最外層的標(biāo)記,表示整個文檔的開始和結(jié)束。(2)HEAD標(biāo)記是第2層,用于把與文檔有關(guān)的信息與文檔主體分開,相當(dāng)于文檔的頭部。(3)TITLE標(biāo)記包含于HEAD內(nèi),向用戶提示文檔內(nèi)包含的信息類型,并且為其頁面提供一個描述性的標(biāo)題。(4)BODY標(biāo)記表示文檔主體部分。(5)HR標(biāo)記表示輸出一橫線。9Java.applet.Appletpublicvoidinit()publicvoiddestroy()publicvoidstart()publicvoidstop()publicvoidpaint(Graphicsg)1Applet概述
——Applet的運行控制Applet的運行控制10Applet的生命周期初始態(tài)(瞬態(tài))運行態(tài)停止態(tài)消亡態(tài)離開web頁面:極小化或裝入其他頁面,調(diào)用stop()方法重新裝入或改變頁面大小或返回Web頁面,調(diào)用start()方法關(guān)閉瀏覽器,調(diào)用destroy()方法第一次裝入,構(gòu)造applet類,調(diào)用init()方法調(diào)用start()方法1Applet概述
——Applet的運行控制11Applet中沒有main()方法。當(dāng)Applet被瀏覽器運行時,init()、start()、stop()、destroy()方法等自動執(zhí)行:
init()方法:初始化,自動調(diào)用,只執(zhí)行一次。本方法主要完成一些Applet初始化進行的一些操作。
start()方法:初始化后,將啟動Start()方法。本方法是Applet的主體,在其中可以執(zhí)行一些任務(wù)或啟動相關(guān)的線程來執(zhí)行任務(wù),在每次applet被關(guān)注的時候被調(diào)用一次.stop()方法:離開Applet所在頁面時調(diào)用,以停止消耗系統(tǒng)資源。
destroy()方法:瀏覽器關(guān)閉時自動調(diào)用,以清除Applet所用的所有資源。1Applet概述
——Applet的運行控制12publicclassSimpleAppletextendsApplet{publicvoidinit(){System.out.println(“調(diào)用了init()方法");}publicvoidstart(){System.out.println(“調(diào)用了start()方法");}publicvoidstop(){System.out.println(“調(diào)用了stop()方法");}publicvoiddestroy(){System.out.println("調(diào)用了destroy()方法");}publicvoidpaint(Graphicsg){
System.out.println("調(diào)用了paint()方法");
g.drawString(“hello,java!");}}SimpleApplet.java7.1Applet概述
——Applet的運行控制13
除了四個Applet生命周期控制的方法外,Applet類還提供了一些其他有用的方法:
publicAppletContextgetAppletContext()
publicStringgetAppletInfo():應(yīng)該被重寫
publicURLgetDocumentBase()
publicURLgetCodeBase()
publicStringgetParameter(String
name)
publicString[][]getParameterInfo():應(yīng)該1Applet概述
——Applet的運行控制14HTML中applet標(biāo)記的使用<APPLET[ARCHIVE=archiveList]//預(yù)加載的類或文件的目錄
[CODEBASE=codebaseURL]//java字節(jié)碼的路徑或URLCODE=appletFile//必須
[ALT=alternateText]//不能運行JavaApplet程序時顯示的正文內(nèi)容。
[NAME=appletInstanceName]//為Applet程序指定一個符號名
WIDTH=pixelsHEIGHT=pixels//必須
[ALIGN=alignment][VSPACE=pixels][HSPACE=pixels]>[<PARAMNAME=appletParameter1VALUE=value>][<PARAMNAME=appletParameter2VALUE=value>]...[alternateHTML]</APPLET>2Applet與HTML15ARCHIVE=archiveList
[File1,File2,…]給出了Applet類及其運行時所需的類所在的卷文件名。CODEBASE=codebaseURL
指明Applet類文件所在URL基址,在Applet類中,方法getCodeBase()可以獲取該屬性。如果這個屬性沒有指明,那么Applet類文件必須與包含它的HTML頁面在同一個地方,方法getCodeBase()返回的值與getDocumentBase()相同。CODE=appletFile
指明需要運行的Applet類文件(.class文件),該文件是與codebaseURL相關(guān)的。NAME=appletInstanceName
給出了Applet類運行時的實例名,這使得同處于一個頁面的不同Applet之間能夠相互通信。方法getAppletContext()可以得到同一個方頁面中其它Applet類。
2Applet與HTML162Applet與HTML17ALT=alternateText
如果瀏覽器支持Applet但不能運行它,就顯示alternateText中所給出的文字。否則就忽略它。WIDTH=pixelsHEIGHT=pixels
Applet在瀏覽器中所顯示的高度和寬度(以象素為單位)。ALIGN=alignment
Applet在瀏覽器中顯示時的對齊方式,其含義與效果與圖片在HTML中的一樣。其取值有:left,right,top,texttop,middle,absmiddle,baseline,bottom,absbottom。VSPACE=pixelsHSPACE=pixels
Applet在瀏覽器中顯示時上下、左右要預(yù)留的高度和寬度,其含義與效果與圖片在HTML中的一樣。2Applet與HTML18Javaapplet其它內(nèi)容其它內(nèi)容vspacehspace其它內(nèi)容vspace其它內(nèi)容hspaceheightwidth2Applet與HTML19<PARAMNAME=appletParameter1VALUE=value>
<PARAM>屬性可以使得Applet能夠從頁面中獲取所需的參數(shù)。Applet可以用其方法getParameter()獲取<PARAM>屬性指定的參數(shù)。<PARAM>屬性的作用與應(yīng)用程序中main()方法里參數(shù)Stringargs[]的作用是一樣的。一個好的小應(yīng)用程序,應(yīng)該提供用戶能夠設(shè)置外部參數(shù)的功能,以使得用戶能夠根據(jù)自己的需要來應(yīng)用它。方法getParameterInfo()可以得到有關(guān)<PARAM>屬性的說明信息。alternateHTML如果瀏覽器不支持Applet,就解釋alternateHTML所給出的HTML代碼。否則就忽略它。2Applet與HTML20publicclassAppletParaextendsApplet{Strings1,s2;publicvoidinit(){s1=getParameter("p1");s2=getParameter("p2");}publicvoidpaint(Graphicsg){g.drawString(s1,10,10);g.drawString(s2,10,30);}}<HTML><HEAD><TITLE>AppletParameterTest</TITLE></HEAD><appletcode=“AppletPara.class"width=300height=300>
<paramname=p1value="1111111"><paramname=p2value="2222222"></applet></HTML>兩個步驟:在Applet類中:
s1=getParameter("p1");
在頁面中設(shè)置Applet參數(shù):
<paramname=p1value="1111111">AppletPara.java2Applet與HTML21JavaApplet瀏覽器是指可以運行包含Applet的HTML文件的一切軟件系統(tǒng)。HotJava、NetscapeNavigator以及MicrosoftInternetExplorer等支持Java的網(wǎng)絡(luò)瀏覽器都是Applet瀏覽器,JavaApplet都可以在其中運行。
AppletViewer是一個Java應(yīng)用程序,它可以使得用戶無須使用網(wǎng)絡(luò)瀏覽器而直接運行JavaApplet。但AppletViewer僅僅是一個Applet瀏覽器,HTML文件中的其他內(nèi)容將不會被顯示出來。
AppletViewer是從java.awt.Frame中繼承而來。使用方法:AppletViewer<HTMLfileorURL>2Applet與HTML
——JavaApplet瀏覽器223Applet應(yīng)用
3.1Applet的字體和顏色在Applet程序中,可以使用Font類來控制字符的字體、字型、大小等屬性,使用Color類來設(shè)置輸出字符的顏色,F(xiàn)ont類和Color類都是AWT的子類。1.Font類的方法利用這些方法可以得到當(dāng)前系統(tǒng)使用的默認(rèn)字體的屬性。如果需要獲得更詳細(xì)的字體信息,可以用FontMetrics類提供的方法。2.Color類的方法Color類使用類構(gòu)造器預(yù)定義了一些常用的顏色,在程序中可以直接使用它們,也可以自己定義其他的顏色。
233Applet應(yīng)用3.創(chuàng)建自己的Font和Color在許多場合,默認(rèn)的字體或顏色特征可能不能滿足用戶要求,這時,可以創(chuàng)建自己的字體或顏色特征。(1)創(chuàng)建字體的具體步驟①創(chuàng)建一個需要的Font對象publicFont(Stringname,intstyle,intsize)其中:name是字體名;style是字體的字型,它可以是Font.PLAIN,Font.BOLD,Font.ITALIC及其組合;size是字體的大小。例如:Fontft1=newFont(“TimesNewRoman”,Font.PLAIN,20);Fontft2=newFont(“宋體”,Font.BOLD+Font.ITALIC,18);②設(shè)置Font對象,通知Java系統(tǒng)使用該字體創(chuàng)建字體后,要使字體起作用,需采用publicabstractvoidsetFont(Fontft)方法。該方法是AWT中Graphics類的方法,其中ft1、ft2是創(chuàng)建的字體對象。
(2)創(chuàng)建顏色的具體步驟①創(chuàng)建一個需要的Color對象publicfinalstaticColor(intcolor1,intcolor2,intcolor3)其中:color1,color2,color3Color的顏色三色值。例如:Colorc=newColor(225,225,225);②設(shè)置Color對象,通知Java系統(tǒng)使用該顏色。創(chuàng)建顏色后,要使顏色起作用,需采用publicabstractvoidsetColor(Colorc)方法。該方法是AWT中Graphics類的方法,其中c是創(chuàng)建的顏色對象。
243.2
Applet的應(yīng)用1.AWT繪圖
2.文字3.圖像
4.動畫
3Applet應(yīng)用25本章小結(jié)
小應(yīng)用程序是在瀏覽器中運行的,每個小應(yīng)用程序中必須有一個主類,冠以public,并且繼承自java.applet。小應(yīng)用程序包括生命周期的四個環(huán)節(jié)和paint()方法。根據(jù)程序要求,用戶可以在主類中定義其它方法,或定義其它類。publicclassmyappletextendsApplet{init(){…}start(){…}stop(){…}destroy(){…}paint(Graphicsg){…}myMethod(){…}}classmyclass1{…};classmyclass2{…};26ap
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 家庭教育政策的未來發(fā)展趨勢預(yù)測
- 教育政策背景下教師職業(yè)發(fā)展現(xiàn)狀分析
- 中職數(shù)學(xué)課件下載
- 醫(yī)療健康中的教育心理學(xué)引導(dǎo)患者自主康復(fù)
- 醫(yī)療繼續(xù)教育培訓(xùn)與教育心理學(xué)的關(guān)系
- 從心理學(xué)角度探討學(xué)生的學(xué)習(xí)動力來源
- 教育心理學(xué)在提升學(xué)生自主學(xué)習(xí)能力中的作用
- 智慧城市公共安全體系建設(shè)及營銷規(guī)劃
- 教育心理學(xué)視角下的教育改革方向探索
- 教育地產(chǎn)的未來規(guī)劃與布局
- 小學(xué)二年級升三年級語文暑假作業(yè)專項練習(xí)
- 貴州省遵義市2024-2025學(xué)年高二下學(xué)期期末語文試題
- 專利執(zhí)法考試試題及答案
- 拍賣公司員工培訓(xùn)考核管理制度
- 廣東省行業(yè)企業(yè)職業(yè)技能競賽技術(shù)工作指引
- 2025年貴州省中考語文試卷真題(含答案)
- 浙江2025年6月高一學(xué)考模擬歷史試題及答案
- 2025年 杭州市蕭山區(qū)衛(wèi)健系統(tǒng)事業(yè)單位工作人員招聘考試筆試試卷附答案
- 2025年計算機程序設(shè)計考試試卷及答案
- 2025秋一年級上冊語文上課課件 4 日月山川
- 2025年中國離子膜法燒堿行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告
評論
0/150
提交評論