[問答題] 下面是一個(gè)Apple(程序,其功能是播放動(dòng)畫。要求根據(jù)給出的3幅圖片設(shè)計(jì)1個(gè)動(dòng)畫。請(qǐng)改正程序中的錯(cuò)誤(有下劃線的語(yǔ)句),使程序能輸出正確的結(jié)果。
[問答題] 下面是一個(gè)Apple(程序,其功能是播放動(dòng)畫。要求根據(jù)給出的3幅圖片設(shè)計(jì)1個(gè)動(dòng)畫。請(qǐng)改正程序中的錯(cuò)誤(有下劃線的語(yǔ)句),使程序能輸出正確的結(jié)果。
注意:不改動(dòng)程序的結(jié)構(gòu),不得增行或刪行。
程序運(yùn)行結(jié)果如下:
import java.awt.*;
import java.applet.*;
import java.awt.image.*;
/*
<applet code="ex24_3.class" width=800 height=400 >
</applet>
*/
public class ex24_3 extends Applet implements Runnable
Image[] images=new Image[4];
Image image;
int imgNumber=3;
int currentImage=0;
Thread thisThread;
public void init()
for (int x=0;x<imgNumber;x++)
images[x]= getImage(getCodeBase(),"img"+x+".gif");
image=images[0];
public void paint(Graphics g)
g.drawImage(image[0],0,0,null);
public void updat
正確答案:g.drawImage(image,0,0,null) currentImage%=imgNumber image=images[currentImage]
參考解析:本題主要考查Applet圖形繪制和多線程相結(jié)合制作動(dòng)畫的綜合應(yīng)用。解題關(guān)鍵是熟悉Applet生命周期,熟悉線程的編程模式,熟悉Graphics類的基本繪圖方法和圖像處理方法等。本題中,第1處,應(yīng)該是繪制當(dāng)前的1幅圖片,image對(duì)象定義的就是這一幅圖像;第2處,將currentImage對(duì)imgNumber取模并把結(jié)果返回給currentImage,作為當(dāng)前圖像的索引值;第3處,將由currentImage索引的圖像數(shù)組中的對(duì)象的值賦給image對(duì)象,用于顯示。
詞條內(nèi)容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。