问题 问答题

【说明】
下面是一个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()方法。

单项选择题
填空题