问题 问答题

【说明】 下面是一个Applet程序,其功能是将完整的图像显示于Applet的区块中,然后可以通过拖动鼠标让图像随着鼠标拖动的轨迹而移动。 程序运行结果如图5所示。

import java. applet. *; import java. awt. *; /* <applet code="ex4_7.class",width=800 height=400> </applet> */ public class ex4_7 extends Applet{ private |mage ilmg; private int xPos,yPos; public void init(){ xPos = yPos= (1) ; ilmg=getlmage( (2) "ex4_7.jpg"); } publicvoid paint(Graphics g){ g. drawlmage(ilmg,xPos,yPos, (3) ); } public boolean (4) (Evente,int x,int y){ xPos=x; yPos=y; (5) ; return true; } } ex4_7. html <HTML> <HEAD> <TITLE> ex4_7 </TITLE> </HEAD> <BODY> <appletcode=" ex4_7. class" width =800 height =400 > </applet> </BODY> </HTML>

答案

参考答案:

解析:(1)0 (2)getDocumentBase() (3)this (4)mouseDrag (5)repaint() 本题主要考查在Applet窗口中显示图像,并结合鼠标事件处理的综合应用。解题关键是熟悉图像文件的加载过程,会跟踪鼠标拖动的事件,并将鼠标在Applet窗口中的坐标信息作为参数传递给 drawImage()方法,用于在新的位置显示图像,从而实现拖动效果。本题中,getImage()方法应该有2个参数,第一个参数是 getDocumentBase()方法的返回值,即图像文件的路径;drawImage()方法最后一个参数应该是this,确定是在当前运行的对象中绘制图像;应该调用repaint()方法,进行重画,而不是paint()方法。

多项选择题
单项选择题