版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
JAVA語言項(xiàng)目5Applet程序設(shè)計(jì)JAVA語言項(xiàng)目5Applet程序設(shè)計(jì)1本項(xiàng)目為JavaApplet程序。返回5.1項(xiàng)目概述本項(xiàng)目為JavaApplet程序。返回5.1項(xiàng)目概述2最新JAVA語言項(xiàng)目5-Applet程序設(shè)計(jì)課件3最新JAVA語言項(xiàng)目5-Applet程序設(shè)計(jì)課件4最新JAVA語言項(xiàng)目5-Applet程序設(shè)計(jì)課件5最新JAVA語言項(xiàng)目5-Applet程序設(shè)計(jì)課件6最新JAVA語言項(xiàng)目5-Applet程序設(shè)計(jì)課件7最新JAVA語言項(xiàng)目5-Applet程序設(shè)計(jì)課件85.3項(xiàng)目支撐知識Applet的生命周期有4個(gè)主要方法:init(),start(),stop()和destroy()。1.初始化:init()publicvoidinit()當(dāng)Applet所在網(wǎng)頁第一次被加載或重新加載時(shí)調(diào)用此方法,并且僅執(zhí)行一次,實(shí)現(xiàn)獲取Applet的運(yùn)行參數(shù)、加載圖像或圖片、初始化全程變量等。上一頁下一頁返回5.3項(xiàng)目支撐知識Applet的生命周期有4個(gè)主要方法:95.3項(xiàng)目支撐知識2.啟動(dòng):start()publicvoidslart()當(dāng)Applet所在網(wǎng)頁第一次被加載或重新加載時(shí),執(zhí)行完init()方法后,start()就自動(dòng)開始執(zhí)行,使得Applet成為“活動(dòng)”的。或者當(dāng)瀏覽器在鏈接到另一個(gè)URL后又重新返回其所在的網(wǎng)頁時(shí),start()就會(huì)再執(zhí)行一遍。與init()方法不同的是start()方法在小應(yīng)用程序的整個(gè)生命周期中可以被調(diào)用多次,用于啟動(dòng)小應(yīng)用程序的執(zhí)行。此方法是Applet應(yīng)用程序的主要部分。上一頁下一頁返回5.3項(xiàng)目支撐知識2.啟動(dòng):start()上一頁下一頁返105.3項(xiàng)目支撐知識3.停止:stop()publicvoidslop()該方法在生命周期中可以被多次調(diào)用。每當(dāng)用戶離開Applet所在網(wǎng)頁,使該網(wǎng)頁變成不活動(dòng)狀態(tài)或最小化瀏覽器時(shí)執(zhí)行。如果瀏覽器又回到此頁,則start()又被調(diào)用來啟動(dòng)JavaAppletApplet通常用該方法使聲音和動(dòng)畫這些耗用系統(tǒng)資源的工作停止,避免影響系統(tǒng)的運(yùn)行速度。如果用戶在小程序中設(shè)計(jì)了播放音樂的功能,而沒有在stop()方法中給出停止播放它的有關(guān)語句,那么當(dāng)離開此頁去瀏覽其他頁時(shí),音樂將不能停止。如果沒有定義stop()方法,當(dāng)用戶離開JavaApplet所在的頁面時(shí),JavaApplet將繼續(xù)使用系統(tǒng)的資源。若定義了stop()方法,則可以掛起Applet的執(zhí)行。上一頁下一頁返回5.3項(xiàng)目支撐知識3.停止:stop()上一頁下一頁返回115.3項(xiàng)目支撐知識4.刪除:destory()publicvoiddestroy()當(dāng)包含Applet的頁面被關(guān)閉時(shí),destroy方法由自動(dòng)瀏覽器或appletviewer調(diào)用,通知此Applet它正在被回收,它應(yīng)該銷毀分配給它的任何資源。可以使用destroy()方法清除Applet占用的資源。在實(shí)際應(yīng)用中,這個(gè)方法很少被重載,因?yàn)橐坏〢pplet運(yùn)行結(jié)束,Java系統(tǒng)會(huì)自動(dòng)清除它所占用的變量空間等資源。該方法是父類Applet中的方法,不必重寫這個(gè)方法,直接繼承即可。上一頁下一頁返回5.3項(xiàng)目支撐知識4.刪除:destory()上一頁下125.3項(xiàng)目支撐知識總之,當(dāng)start()方法運(yùn)行時(shí),Applet在瀏覽器上成為可視化的,stop()方法運(yùn)行時(shí),Applet在瀏覽器上成為不可視化的,也就是說start()和stop()兩個(gè)方法構(gòu)成了Applet生命周期中的可視化周期,占據(jù)Web瀏覽器頁面。換句話說:從調(diào)用init()方法,Applet開始運(yùn)行,到調(diào)用destroy()方法,Applet停止運(yùn)行,回收資源,這個(gè)流程稱為Applet的生命周期。如圖5-2所示。上一頁下一頁返回5.3項(xiàng)目支撐知識總之,當(dāng)start()方法運(yùn)行時(shí),Ap135.3項(xiàng)目支撐知識5.3.4項(xiàng)目開發(fā)背景知識4Applet類的顯示方法Apple本質(zhì)上是圖形方式的,System.out.println()是沒有用的,可以創(chuàng)建paint()方法繪圖。只要刷新Applet的顯示,paint()方法就會(huì)被調(diào)用。繪圖:paint()方法publicvoidpaint(Graphicsg)上一頁下一頁返回5.3項(xiàng)目支撐知識5.3.4項(xiàng)目開發(fā)背景知識4App145.3項(xiàng)目支撐知識Applet類的此方法用于繪制容器。paint()方法帶有一個(gè)參數(shù),它是Java.awtGraphics類的一個(gè)實(shí)例,用于在Applet中繪圖或?qū)懭胛谋尽raphic是類是所有圖形上下文的抽象基類,允許應(yīng)用程序可以在組件以及閉屏圖像上進(jìn)行繪制。publicabstractvoiddrawString(Stringstr,intx,inty)Graphics類的此方法使用此圖形上下文的當(dāng)前字體和顏色繪制由指定String給定的文本。最左側(cè)字符的基線位于此圖形上下文坐標(biāo)系統(tǒng)的(x,y)位置處。上一頁下一頁返回5.3項(xiàng)目支撐知識Applet類的此方法用于繪制容器。p155.3項(xiàng)目支撐知識Str:要繪制的Stringx:x坐標(biāo)y:y坐標(biāo)2.重繪:repaint()方法publicvoidrepaint()Applet類的此方法用于重繪組件。當(dāng)用戶使用repaint()方法時(shí),將導(dǎo)致下列事情發(fā)生:程序首先清除repaint()方法以前所畫的內(nèi)容,然后再調(diào)用repaint()方法。改變顯示可調(diào)用repaint()。repaint()將會(huì)產(chǎn)生一個(gè)調(diào)用update()的AWT線程。上一頁下一頁返回5.3項(xiàng)目支撐知識Str:要繪制的String上一頁下一165.3項(xiàng)目支撐知識3.更新:update(Graphicsg)方法publicvoidupdate(Graphicsg)Applet類的此方法用于更新容器。update方法通常清除當(dāng)前的顯示并調(diào)用paint()。paint(),update()和repaint()方法間的內(nèi)在關(guān)系如圖5-3所示。在Applet中,Applet的顯示更新由一個(gè)專門的AWT線程控制。上一頁下一頁返回5.3項(xiàng)目支撐知識3.更新:update(Grap175.3項(xiàng)目支撐知識該線程主要負(fù)責(zé)兩種情況的處理:第一種情況是在Applet的初次顯示或?yàn)g覽器窗口大小發(fā)生變化,而引起Applet的顯示發(fā)生變化時(shí),將調(diào)paint()方法進(jìn)行Applet繪制;第二種情況是Applet代碼需要更新內(nèi)容,從程序中調(diào)用二paint()方法,則AWT線程在接收到該方法的調(diào)用后,將調(diào)用Applet的update()方法,而update()方法再調(diào)用構(gòu)件的paint()方法實(shí)現(xiàn)顯示的更新。上一頁下一頁返回5.3項(xiàng)目支撐知識該線程主要負(fù)責(zé)兩種情況的處理:第一種情185.3項(xiàng)目支撐知識5.3.5項(xiàng)目開發(fā)背景知識5Applet標(biāo)記運(yùn)行JavaApplet時(shí)必須將其字節(jié)碼嵌人到HTML文件中才能夠運(yùn)行。<HTML>和</HTML>這一對標(biāo)記標(biāo)志著HTML文件的開始和結(jié)束。若在HTML文件中嵌入JavaApplet,需要通過使用一組特殊標(biāo)記<APPLET>和</APPLET>。嵌入JavaApplet標(biāo)記的完整語法:上一頁下一頁返回5.3項(xiàng)目支撐知識5.3.5項(xiàng)目開發(fā)背景知識5195.3項(xiàng)目支撐知識上一頁下一頁返回5.3項(xiàng)目支撐知識上一頁下一頁返回205.3項(xiàng)目支撐知識語法說明:archive=archiveList:可選屬性,描述了一個(gè)或多個(gè)含有將被“預(yù)裝”的類和其他資源的archives。類的裝載由帶有給定codehbase的AppletClassLoader的一個(gè)實(shí)例來完成。ArchiveList中的archives以逗號(,)分隔。?code=appletFile.class:必選屬性,它給定了含有已編譯好的Applet子類的文件名。也可用package.appletFile.class的格式來表示。這個(gè)文件與要裝入的HTML文件的基URL有關(guān),它不能含有路徑名。上一頁下一頁返回5.3項(xiàng)目支撐知識語法說明:上一頁下一頁返回215.3項(xiàng)目支撐知識width=pixelsheight=pixels:必選屬性,給出Applet顯示區(qū)域的初始寬度和高度(以象素為單位),不包括Applet所產(chǎn)生的任何窗口或?qū)υ挊?。codebase=codebaseURL:可選屬性,指定了Applet的基URL—包含有Applet代碼的目錄。如果這一屬性未指定,則采用文檔的URL。alt=alternateText:可選屬性,指定了當(dāng)瀏覽器能讀取Applet標(biāo)記但不能執(zhí)行JavaApplet時(shí)要顯示的文本。name=AppletInstanceNatme:可選屬性,為Applet實(shí)例指定有關(guān)名稱,從而使得在同一頁面上的Applet可找到彼此(以及互相通信)。上一頁下一頁返回5.3項(xiàng)目支撐知識width=pixelsheight225.3項(xiàng)目支撐知識align=alignment:可選屬性,指定了Applet的對齊方式。它的可取值與基本的HTML中IMG標(biāo)記的相應(yīng)屬性相同,為left,right,top,texttop,middle,absmiddle,baseline,bottom和absbottotn。vspace=pixelshspace=pixels:可選屬性,指定了在Applet上下(Vspace)及左右(hspace)的象素?cái)?shù)日。其用法與IMG標(biāo)記的vspace和hspace屬性相同。<paramname=appletAltribute1value=value>:可選屬性,提供了一種可帶有由“外部”指定的數(shù)值的Applet,它對一個(gè)Java應(yīng)用程序的作用與命令行參數(shù)相同。上一頁下一頁返回5.3項(xiàng)目支撐知識align=alignment:可選屬235.3項(xiàng)目支撐知識
Applet用getParameter()方法來存取它們的屬性。alternateHTML:可選屬性,不支持Java程序執(zhí)行的瀏覽器將顯示被包括在<applet>和</applet>標(biāo)記之間的任何常規(guī)的HTML;而可支持Java技術(shù)的瀏覽器則忽略介于這兩個(gè)標(biāo)記之間的HTML代碼。上一頁返回5.3項(xiàng)目支撐知識Applet用getParamete245.4項(xiàng)目實(shí)施【例5-1】完成Applet的程序和HTML文件,使程序輸出結(jié)果如圖5-4所示。Applet程序如下:下一頁返回5.4項(xiàng)目實(shí)施【例5-1】完成Applet的程序和HTM255.4項(xiàng)目實(shí)施HTML代碼如下:評析:本項(xiàng)目考查的是Applet的使用。在HTML文檔中,可通過Applet標(biāo)簽指定Java小程序。在Applet標(biāo)簽中,code用來指定Java小程序文件;cadebase用來指定Java小程序存放的路徑。上一頁下一頁返回5.4項(xiàng)目實(shí)施HTML代碼如下:上一頁下一頁返回265.4項(xiàng)目實(shí)施在HTML文檔中,可通過param標(biāo)簽向Java小程序傳遞參數(shù)。在param標(biāo)簽中,name屬性用來指定Java小程序的參數(shù)名,value用來指定參數(shù)值。另外本項(xiàng)目還考查了Graphics類的應(yīng)用。Graphics類提供了三個(gè)在部件和圖像中繪制文本的方法。本題所涉及的是drawString()方法。voiddrawString(Stringstr,intx,inty)drawString()方法用一個(gè)包含將要被顯示文本的字符串實(shí)例以及兩個(gè)指定文本開始坐標(biāo)的整型值作為參數(shù)。上一頁下一頁返回5.4項(xiàng)目實(shí)施在HTML文檔中,可通過param標(biāo)簽向J275.4項(xiàng)目實(shí)施上面列的代碼顯示了在paint()方法內(nèi)使用drawString()方法。這個(gè)范例代碼在含paint()方法的部件中顯示字符“歡迎你參加Java考試!”,x和y坐標(biāo)指明文本框左下角位置。上一頁下一頁返回5.4項(xiàng)目實(shí)施上一頁下一頁返回285.4項(xiàng)目實(shí)施【例5-2】在Java2.html的Applet標(biāo)記中,定義了參數(shù)Strings并給出了它對應(yīng)的字符串值,AppletJava2中將顯示這個(gè)字符串。Applet程序如下:上一頁下一頁返回5.4項(xiàng)目實(shí)施【例5-2】在Java2.html的Ap295.4項(xiàng)目實(shí)施HTML程序如下:上一頁下一頁返回5.4項(xiàng)目實(shí)施上一頁下一頁返回305.4項(xiàng)目實(shí)施評析:本項(xiàng)目是Applet的使用。在HTML文檔中,可通過Applet標(biāo)簽指定Java小程序。在Applet標(biāo)簽中,code用來指定Java小程序文件;cadebase用來指定Java小程序存放的路徑。上一頁下一頁返回5.4項(xiàng)目實(shí)施上一頁下一頁返回315.4項(xiàng)目實(shí)施在HTML文檔中,可通過param標(biāo)簽向Java小程序傳遞參數(shù)。在param標(biāo)簽中,name屬性用來指定Java小程序的參數(shù)名,value用來指定參數(shù)值。【例5-3】讀取傳遞給Applet的參數(shù)Image,并將所傳遞的參數(shù)的圖片顯示出來;在狀態(tài)欄中顯示出鼠標(biāo)位置。上一頁下一頁返回5.4項(xiàng)目實(shí)施在HTML文檔中,可通過param標(biāo)簽向J325.4項(xiàng)目實(shí)施上一頁下一頁返回5.4項(xiàng)目實(shí)施上一頁下一頁返回335.4項(xiàng)目實(shí)施、其正確結(jié)果輸出如圖5-5所示。上一頁下一頁返回5.4項(xiàng)目實(shí)施、上一頁下一頁返回345.4項(xiàng)目實(shí)施評析:本項(xiàng)目是Applet中參數(shù)的傳遞及圖片的顯示。在HTML文檔中,可通過param標(biāo)簽向Java小程序傳遞參數(shù)。在param標(biāo)簽中,name屬性用來指定Java小程序的參數(shù)名,value用來指定參數(shù)值。本題通過getParameter獲得Appler中的參數(shù)Image的值。本項(xiàng)目還涉及到了事件適配器,它提供了一種簡單的實(shí)現(xiàn)監(jiān)聽器的手段,可以縮短程序代碼,因?yàn)樗峭ㄟ^重寫需要的方法,無關(guān)的方法不用實(shí)現(xiàn)。上一頁下一頁返回5.4項(xiàng)目實(shí)施評析:上一頁下一頁返回355.4項(xiàng)目實(shí)施this.addMouseMotionListener(newMouseMotionAdapter()采用了鼠標(biāo)運(yùn)動(dòng)適配器MouseMotionAdapter,重寫了mouseMoved()方法,在方法中通過showStatus(strTemp);顯示出了鼠標(biāo)的位置。另外本項(xiàng)目還考查了Graphics類的應(yīng)用。Graphic是類提供了畫線和圓這樣的簡單幾何類型的方法,另外也提供了顯示文本的方法。為了繪制,程序要求有一個(gè)有效的圖形環(huán)境(由graphics類的一個(gè)實(shí)例表示)。因?yàn)?graphics類是一個(gè)抽象的基類,它不能直接被實(shí)例化。上一頁下一頁返回5.4項(xiàng)目實(shí)施this.addMouseMotionLi365.4項(xiàng)目實(shí)施一個(gè)具體的實(shí)例被一個(gè)部件創(chuàng)建,并且然后作為一個(gè)參數(shù)傳遞給程序到一個(gè)部件的update()和paint()方法。這兩個(gè)方法作為AWT內(nèi)周期繪制的一部分被調(diào)用。Graphics類提供了三個(gè)在部件和圖像中繪制文本的方法。本項(xiàng)目所涉及的是drawImage()方法。drawImage()方法用于把一幅圖片在指定的位置上顯示出來?!纠?-4】在Applet中顯示0至10的階乘。上一頁下一頁返回5.4項(xiàng)目實(shí)施一個(gè)具體的實(shí)例被一個(gè)部件創(chuàng)建,并且然后作為375.4項(xiàng)目實(shí)施上一頁下一頁返回5.4項(xiàng)目實(shí)施上一頁下一頁返回385.4項(xiàng)目實(shí)施運(yùn)行結(jié)果如圖5-6所示。上一頁下一頁返回5.4項(xiàng)目實(shí)施上一頁下一頁返回395.4項(xiàng)目實(shí)施評析:本項(xiàng)目中的Applet程序必須是繼承了Java.applet.Applet的類?!纠?-5】在Applet中顯示4個(gè)字符串”Hello!”上一頁下一頁返回5.4項(xiàng)目實(shí)施評析:上一頁下一頁返回405.4項(xiàng)目實(shí)施運(yùn)行結(jié)果如圖5-7所示。上一頁下一頁返回5.4項(xiàng)目實(shí)施上一頁下一頁返回415.4項(xiàng)目實(shí)施評析:(1)JavaApplet必須是Java.applet.Applet或Javax.swing.JApplet的子類,引用JApplet類時(shí)需要指定其所在的包的包名。(2)Applet從HTML文檔中獲取參數(shù)信息使用getParameter(StringparamName)方法,而本題的HTML文檔中有代碼:<PARAMNAME=numVALUE=”4“>,聲明了一個(gè)名為num值為4的參數(shù)。上一頁返回5.4項(xiàng)目實(shí)施評析:上一頁返回425.5項(xiàng)目總結(jié)本帝中主要介紹了Applet程序的運(yùn)行機(jī)制。appletviewer是JDK附帶的專門查看Applet程序的工具,其功能相當(dāng)于一個(gè)“最小化的瀏覽器”。appletviewer位于JDK目錄下的bin目錄中。有了appletviewer,可以不需使用Web瀏覽器就能夠運(yùn)行JavaApplet程序。返回5.5項(xiàng)目總結(jié)本帝中主要介紹了Applet程序的運(yùn)行機(jī)制435.6擴(kuò)展演練編寫一個(gè)顯示“歡迎進(jìn)入Java的世界”的JavaApplet程序。返回5.6擴(kuò)展演練編寫一個(gè)顯示“歡迎進(jìn)入Java的世界”的J44圖5-1返回圖5-1返回45圖5-2返回圖5-2返回46圖5-3返回圖5-3返回47圖5-4返回圖5-4返回48圖5-5返回圖5-5返回49圖5-6返回圖5-6返回50圖5-7返回圖5-7返回51
結(jié)束語謝謝大家聆聽?。?!52
結(jié)束語謝謝大家聆聽!?。?2JAVA語言項(xiàng)目5Applet程序設(shè)計(jì)JAVA語言項(xiàng)目5Applet程序設(shè)計(jì)53本項(xiàng)目為JavaApplet程序。返回5.1項(xiàng)目概述本項(xiàng)目為JavaApplet程序。返回5.1項(xiàng)目概述54最新JAVA語言項(xiàng)目5-Applet程序設(shè)計(jì)課件55最新JAVA語言項(xiàng)目5-Applet程序設(shè)計(jì)課件56最新JAVA語言項(xiàng)目5-Applet程序設(shè)計(jì)課件57最新JAVA語言項(xiàng)目5-Applet程序設(shè)計(jì)課件58最新JAVA語言項(xiàng)目5-Applet程序設(shè)計(jì)課件59最新JAVA語言項(xiàng)目5-Applet程序設(shè)計(jì)課件605.3項(xiàng)目支撐知識Applet的生命周期有4個(gè)主要方法:init(),start(),stop()和destroy()。1.初始化:init()publicvoidinit()當(dāng)Applet所在網(wǎng)頁第一次被加載或重新加載時(shí)調(diào)用此方法,并且僅執(zhí)行一次,實(shí)現(xiàn)獲取Applet的運(yùn)行參數(shù)、加載圖像或圖片、初始化全程變量等。上一頁下一頁返回5.3項(xiàng)目支撐知識Applet的生命周期有4個(gè)主要方法:615.3項(xiàng)目支撐知識2.啟動(dòng):start()publicvoidslart()當(dāng)Applet所在網(wǎng)頁第一次被加載或重新加載時(shí),執(zhí)行完init()方法后,start()就自動(dòng)開始執(zhí)行,使得Applet成為“活動(dòng)”的。或者當(dāng)瀏覽器在鏈接到另一個(gè)URL后又重新返回其所在的網(wǎng)頁時(shí),start()就會(huì)再執(zhí)行一遍。與init()方法不同的是start()方法在小應(yīng)用程序的整個(gè)生命周期中可以被調(diào)用多次,用于啟動(dòng)小應(yīng)用程序的執(zhí)行。此方法是Applet應(yīng)用程序的主要部分。上一頁下一頁返回5.3項(xiàng)目支撐知識2.啟動(dòng):start()上一頁下一頁返625.3項(xiàng)目支撐知識3.停止:stop()publicvoidslop()該方法在生命周期中可以被多次調(diào)用。每當(dāng)用戶離開Applet所在網(wǎng)頁,使該網(wǎng)頁變成不活動(dòng)狀態(tài)或最小化瀏覽器時(shí)執(zhí)行。如果瀏覽器又回到此頁,則start()又被調(diào)用來啟動(dòng)JavaAppletApplet通常用該方法使聲音和動(dòng)畫這些耗用系統(tǒng)資源的工作停止,避免影響系統(tǒng)的運(yùn)行速度。如果用戶在小程序中設(shè)計(jì)了播放音樂的功能,而沒有在stop()方法中給出停止播放它的有關(guān)語句,那么當(dāng)離開此頁去瀏覽其他頁時(shí),音樂將不能停止。如果沒有定義stop()方法,當(dāng)用戶離開JavaApplet所在的頁面時(shí),JavaApplet將繼續(xù)使用系統(tǒng)的資源。若定義了stop()方法,則可以掛起Applet的執(zhí)行。上一頁下一頁返回5.3項(xiàng)目支撐知識3.停止:stop()上一頁下一頁返回635.3項(xiàng)目支撐知識4.刪除:destory()publicvoiddestroy()當(dāng)包含Applet的頁面被關(guān)閉時(shí),destroy方法由自動(dòng)瀏覽器或appletviewer調(diào)用,通知此Applet它正在被回收,它應(yīng)該銷毀分配給它的任何資源??梢允褂胐estroy()方法清除Applet占用的資源。在實(shí)際應(yīng)用中,這個(gè)方法很少被重載,因?yàn)橐坏〢pplet運(yùn)行結(jié)束,Java系統(tǒng)會(huì)自動(dòng)清除它所占用的變量空間等資源。該方法是父類Applet中的方法,不必重寫這個(gè)方法,直接繼承即可。上一頁下一頁返回5.3項(xiàng)目支撐知識4.刪除:destory()上一頁下645.3項(xiàng)目支撐知識總之,當(dāng)start()方法運(yùn)行時(shí),Applet在瀏覽器上成為可視化的,stop()方法運(yùn)行時(shí),Applet在瀏覽器上成為不可視化的,也就是說start()和stop()兩個(gè)方法構(gòu)成了Applet生命周期中的可視化周期,占據(jù)Web瀏覽器頁面。換句話說:從調(diào)用init()方法,Applet開始運(yùn)行,到調(diào)用destroy()方法,Applet停止運(yùn)行,回收資源,這個(gè)流程稱為Applet的生命周期。如圖5-2所示。上一頁下一頁返回5.3項(xiàng)目支撐知識總之,當(dāng)start()方法運(yùn)行時(shí),Ap655.3項(xiàng)目支撐知識5.3.4項(xiàng)目開發(fā)背景知識4Applet類的顯示方法Apple本質(zhì)上是圖形方式的,System.out.println()是沒有用的,可以創(chuàng)建paint()方法繪圖。只要刷新Applet的顯示,paint()方法就會(huì)被調(diào)用。繪圖:paint()方法publicvoidpaint(Graphicsg)上一頁下一頁返回5.3項(xiàng)目支撐知識5.3.4項(xiàng)目開發(fā)背景知識4App665.3項(xiàng)目支撐知識Applet類的此方法用于繪制容器。paint()方法帶有一個(gè)參數(shù),它是Java.awtGraphics類的一個(gè)實(shí)例,用于在Applet中繪圖或?qū)懭胛谋尽raphic是類是所有圖形上下文的抽象基類,允許應(yīng)用程序可以在組件以及閉屏圖像上進(jìn)行繪制。publicabstractvoiddrawString(Stringstr,intx,inty)Graphics類的此方法使用此圖形上下文的當(dāng)前字體和顏色繪制由指定String給定的文本。最左側(cè)字符的基線位于此圖形上下文坐標(biāo)系統(tǒng)的(x,y)位置處。上一頁下一頁返回5.3項(xiàng)目支撐知識Applet類的此方法用于繪制容器。p675.3項(xiàng)目支撐知識Str:要繪制的Stringx:x坐標(biāo)y:y坐標(biāo)2.重繪:repaint()方法publicvoidrepaint()Applet類的此方法用于重繪組件。當(dāng)用戶使用repaint()方法時(shí),將導(dǎo)致下列事情發(fā)生:程序首先清除repaint()方法以前所畫的內(nèi)容,然后再調(diào)用repaint()方法。改變顯示可調(diào)用repaint()。repaint()將會(huì)產(chǎn)生一個(gè)調(diào)用update()的AWT線程。上一頁下一頁返回5.3項(xiàng)目支撐知識Str:要繪制的String上一頁下一685.3項(xiàng)目支撐知識3.更新:update(Graphicsg)方法publicvoidupdate(Graphicsg)Applet類的此方法用于更新容器。update方法通常清除當(dāng)前的顯示并調(diào)用paint()。paint(),update()和repaint()方法間的內(nèi)在關(guān)系如圖5-3所示。在Applet中,Applet的顯示更新由一個(gè)專門的AWT線程控制。上一頁下一頁返回5.3項(xiàng)目支撐知識3.更新:update(Grap695.3項(xiàng)目支撐知識該線程主要負(fù)責(zé)兩種情況的處理:第一種情況是在Applet的初次顯示或?yàn)g覽器窗口大小發(fā)生變化,而引起Applet的顯示發(fā)生變化時(shí),將調(diào)paint()方法進(jìn)行Applet繪制;第二種情況是Applet代碼需要更新內(nèi)容,從程序中調(diào)用二paint()方法,則AWT線程在接收到該方法的調(diào)用后,將調(diào)用Applet的update()方法,而update()方法再調(diào)用構(gòu)件的paint()方法實(shí)現(xiàn)顯示的更新。上一頁下一頁返回5.3項(xiàng)目支撐知識該線程主要負(fù)責(zé)兩種情況的處理:第一種情705.3項(xiàng)目支撐知識5.3.5項(xiàng)目開發(fā)背景知識5Applet標(biāo)記運(yùn)行JavaApplet時(shí)必須將其字節(jié)碼嵌人到HTML文件中才能夠運(yùn)行。<HTML>和</HTML>這一對標(biāo)記標(biāo)志著HTML文件的開始和結(jié)束。若在HTML文件中嵌入JavaApplet,需要通過使用一組特殊標(biāo)記<APPLET>和</APPLET>。嵌入JavaApplet標(biāo)記的完整語法:上一頁下一頁返回5.3項(xiàng)目支撐知識5.3.5項(xiàng)目開發(fā)背景知識5715.3項(xiàng)目支撐知識上一頁下一頁返回5.3項(xiàng)目支撐知識上一頁下一頁返回725.3項(xiàng)目支撐知識語法說明:archive=archiveList:可選屬性,描述了一個(gè)或多個(gè)含有將被“預(yù)裝”的類和其他資源的archives。類的裝載由帶有給定codehbase的AppletClassLoader的一個(gè)實(shí)例來完成。ArchiveList中的archives以逗號(,)分隔。?code=appletFile.class:必選屬性,它給定了含有已編譯好的Applet子類的文件名。也可用package.appletFile.class的格式來表示。這個(gè)文件與要裝入的HTML文件的基URL有關(guān),它不能含有路徑名。上一頁下一頁返回5.3項(xiàng)目支撐知識語法說明:上一頁下一頁返回735.3項(xiàng)目支撐知識width=pixelsheight=pixels:必選屬性,給出Applet顯示區(qū)域的初始寬度和高度(以象素為單位),不包括Applet所產(chǎn)生的任何窗口或?qū)υ挊?。codebase=codebaseURL:可選屬性,指定了Applet的基URL—包含有Applet代碼的目錄。如果這一屬性未指定,則采用文檔的URL。alt=alternateText:可選屬性,指定了當(dāng)瀏覽器能讀取Applet標(biāo)記但不能執(zhí)行JavaApplet時(shí)要顯示的文本。name=AppletInstanceNatme:可選屬性,為Applet實(shí)例指定有關(guān)名稱,從而使得在同一頁面上的Applet可找到彼此(以及互相通信)。上一頁下一頁返回5.3項(xiàng)目支撐知識width=pixelsheight745.3項(xiàng)目支撐知識align=alignment:可選屬性,指定了Applet的對齊方式。它的可取值與基本的HTML中IMG標(biāo)記的相應(yīng)屬性相同,為left,right,top,texttop,middle,absmiddle,baseline,bottom和absbottotn。vspace=pixelshspace=pixels:可選屬性,指定了在Applet上下(Vspace)及左右(hspace)的象素?cái)?shù)日。其用法與IMG標(biāo)記的vspace和hspace屬性相同。<paramname=appletAltribute1value=value>:可選屬性,提供了一種可帶有由“外部”指定的數(shù)值的Applet,它對一個(gè)Java應(yīng)用程序的作用與命令行參數(shù)相同。上一頁下一頁返回5.3項(xiàng)目支撐知識align=alignment:可選屬755.3項(xiàng)目支撐知識
Applet用getParameter()方法來存取它們的屬性。alternateHTML:可選屬性,不支持Java程序執(zhí)行的瀏覽器將顯示被包括在<applet>和</applet>標(biāo)記之間的任何常規(guī)的HTML;而可支持Java技術(shù)的瀏覽器則忽略介于這兩個(gè)標(biāo)記之間的HTML代碼。上一頁返回5.3項(xiàng)目支撐知識Applet用getParamete765.4項(xiàng)目實(shí)施【例5-1】完成Applet的程序和HTML文件,使程序輸出結(jié)果如圖5-4所示。Applet程序如下:下一頁返回5.4項(xiàng)目實(shí)施【例5-1】完成Applet的程序和HTM775.4項(xiàng)目實(shí)施HTML代碼如下:評析:本項(xiàng)目考查的是Applet的使用。在HTML文檔中,可通過Applet標(biāo)簽指定Java小程序。在Applet標(biāo)簽中,code用來指定Java小程序文件;cadebase用來指定Java小程序存放的路徑。上一頁下一頁返回5.4項(xiàng)目實(shí)施HTML代碼如下:上一頁下一頁返回785.4項(xiàng)目實(shí)施在HTML文檔中,可通過param標(biāo)簽向Java小程序傳遞參數(shù)。在param標(biāo)簽中,name屬性用來指定Java小程序的參數(shù)名,value用來指定參數(shù)值。另外本項(xiàng)目還考查了Graphics類的應(yīng)用。Graphics類提供了三個(gè)在部件和圖像中繪制文本的方法。本題所涉及的是drawString()方法。voiddrawString(Stringstr,intx,inty)drawString()方法用一個(gè)包含將要被顯示文本的字符串實(shí)例以及兩個(gè)指定文本開始坐標(biāo)的整型值作為參數(shù)。上一頁下一頁返回5.4項(xiàng)目實(shí)施在HTML文檔中,可通過param標(biāo)簽向J795.4項(xiàng)目實(shí)施上面列的代碼顯示了在paint()方法內(nèi)使用drawString()方法。這個(gè)范例代碼在含paint()方法的部件中顯示字符“歡迎你參加Java考試!”,x和y坐標(biāo)指明文本框左下角位置。上一頁下一頁返回5.4項(xiàng)目實(shí)施上一頁下一頁返回805.4項(xiàng)目實(shí)施【例5-2】在Java2.html的Applet標(biāo)記中,定義了參數(shù)Strings并給出了它對應(yīng)的字符串值,AppletJava2中將顯示這個(gè)字符串。Applet程序如下:上一頁下一頁返回5.4項(xiàng)目實(shí)施【例5-2】在Java2.html的Ap815.4項(xiàng)目實(shí)施HTML程序如下:上一頁下一頁返回5.4項(xiàng)目實(shí)施上一頁下一頁返回825.4項(xiàng)目實(shí)施評析:本項(xiàng)目是Applet的使用。在HTML文檔中,可通過Applet標(biāo)簽指定Java小程序。在Applet標(biāo)簽中,code用來指定Java小程序文件;cadebase用來指定Java小程序存放的路徑。上一頁下一頁返回5.4項(xiàng)目實(shí)施上一頁下一頁返回835.4項(xiàng)目實(shí)施在HTML文檔中,可通過param標(biāo)簽向Java小程序傳遞參數(shù)。在param標(biāo)簽中,name屬性用來指定Java小程序的參數(shù)名,value用來指定參數(shù)值?!纠?-3】讀取傳遞給Applet的參數(shù)Image,并將所傳遞的參數(shù)的圖片顯示出來;在狀態(tài)欄中顯示出鼠標(biāo)位置。上一頁下一頁返回5.4項(xiàng)目實(shí)施在HTML文檔中,可通過param標(biāo)簽向J845.4項(xiàng)目實(shí)施上一頁下一頁返回5.4項(xiàng)目實(shí)施上一頁下一頁返回855.4項(xiàng)目實(shí)施、其正確結(jié)果輸出如圖5-5所示。上一頁下一頁返回5.4項(xiàng)目實(shí)施、上一頁下一頁返回865.4項(xiàng)目實(shí)施評析:本項(xiàng)目是Applet中參數(shù)的傳遞及圖片的顯示。在HTML文檔中,可通過param標(biāo)簽向Java小程序傳遞參數(shù)。在param標(biāo)簽中,name屬性用來指定Java小程序的參數(shù)名,value用來指定參數(shù)值。本題通過getParameter獲得Appler中的參數(shù)Image的值。本項(xiàng)目還涉及到了事件適配器,它提供了一種簡單的實(shí)現(xiàn)監(jiān)聽器的手段,可以縮短程序代碼,因?yàn)樗峭ㄟ^重寫需要的方法,無關(guān)的方法不用實(shí)現(xiàn)。上一頁下一頁返回5.4項(xiàng)目實(shí)施評析:上一頁下一頁返回87
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 制定管理方式和工作計(jì)劃方案
- 政府采購合同的產(chǎn)業(yè)合作項(xiàng)目案例分析
- 建筑裝飾設(shè)計(jì)購銷合同
- 建筑石子購銷
- 信用社汽車貸款合同范例
- 果樹幼苗采購合同范本
- 知識產(chǎn)權(quán)貫標(biāo)咨詢服務(wù)
- 門禁系統(tǒng)采購協(xié)議
- 家庭滅蟑螂服務(wù)協(xié)議
- 機(jī)械購銷合同全文查閱
- 九年義務(wù)教育小學(xué)數(shù)學(xué)教學(xué)大綱(人教版)
- 重慶大學(xué)--數(shù)學(xué)模型--數(shù)學(xué)實(shí)驗(yàn)作業(yè)七
- CFG樁計(jì)算表格(2012新規(guī)范)
- 二年級數(shù)學(xué)興趣小組活動(dòng)記錄全記錄
- 中藥硬膏管理規(guī)定、操作流程及評分標(biāo)準(zhǔn)(共3頁)
- 單值移動(dòng)極差圖(空白表格)
- 電鍍生產(chǎn)工序
- 塔城地區(qū)事業(yè)單位專業(yè)技術(shù)各等級崗位基本任職資格條件指導(dǎo)意見
- 初中語文課外古詩文董仲舒《春秋繁露》原文及翻譯
- (完整)(電子商務(wù)軟件研發(fā)及產(chǎn)業(yè)化建設(shè)項(xiàng)目)監(jiān)理月報(bào)(201202)
- 旅游出行安全告知書
評論
0/150
提交評論