[问答题] 下面是一个Apple(程序,其功能是播放动画。要求根据给出的3幅图片设计1个动画。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
程序运行结果如下:
import java.awt.*;
import java.applet.*;
import java.awt.image.*;
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图形绘制和多线程相结合制作动画的综合应用。解题关键是熟悉Applet生命周期,熟悉线程的编程模式,熟悉Graphics类的基本绘图方法和图像处理方法等。本题中,第1处,应该是绘制当前的1幅图片,image对象定义的就是这一幅图像;第2处,将currentImage对imgNumber取模并把结果返回给currentImage,作为当前图像的索引值;第3处,将由currentImage索引的图像数组中的对象的值赋给image对象,用于显示。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)