[问答题] 下面是一个Applet程序,其功能是将完整的图像显示于Applet的区块中,然后可以通过拖动鼠标让图像随着鼠标拖动的轨迹而移动。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
源程序文件代码清单如下:
import java.applet.*;
import java.awt.*;
public class ex7_3 extends Applet
private Image iImg;
private int xPos,yPos;
public void init(
xPos=yPos=0;iImg=getImage("ex7_3.jpg");
public void paint(Graphics g) g.drawImage(iImg,xPos,yPos);public boolean mouseDrag(Event e,int x,int y) xPos=x;yPos=y;
paint();
return true;
ex7_3.html
<HTML>
<HEAD>
<TITLE>ex7_3
正确答案:iImg=getImage(getdocumentbase(), "ex7_3.jpg")g.drawImage(iImg,xPos,yPos,this)repaint()
参考解析:本题主要考查在Applet窗口中显示图像,并结合鼠标事件处理的综合应用。解题关键是熟悉图像文件的加载过程,会跟踪鼠标拖动的事件,并将鼠标在Applet窗口中的坐标信息作为参数传递给drawImage()方法,用于在新的位置显示图像,从而实现拖动效果。本题中,第1处,getImage()方法应该有2个参数,第1个参数是getdocumentbase()方法的返回值,即图像文件的路径;第2处,drawImage()方法最后1个参数应该是this,确定是在当前运行的。对象中绘制图像;第3处,应该调用repaint()方法,进行重画,而不是paint()方法。程序运行结果如下。 [*]


![[问答题] 下面是一个Applet程序,其功能是将完整的图像显示于Applet的区块中,然后可以通过拖动鼠标让图像随着鼠标拖动的轨迹而移动。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果 [问答题] 下面是一个Applet程序,其功能是将完整的图像显示于Applet的区块中,然后可以通过拖动鼠标让图像随着鼠标拖动的轨迹而移动。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果](http://www.mshxw.com/aiimages/31/481604.png)
