[问答题] 下面的Applet程序通过内部类处理鼠标单击事件。在小程序中,如果点击鼠标,则在状态栏输出鼠标点击的坐标;如果双击鼠标,则显示一副图片,鼠标单击处为显示图片的左上角坐标,显示图片的宽度为2

17 查阅

[问答题] 下面的Applet程序通过内部类处理鼠标单击事件。在小程序中,如果点击鼠标,则在状态栏输出鼠标点击的坐标;如果双击鼠标,则显示一副图片,鼠标单击处为显示图片的左上角坐标,显示图片的宽度为200像素,高度为180像素。请改正程序中的错误(有下划线的语句),使程序执行后,能得到预期的结果。

注意:不改动程序的结构,不得增行或删行。

程序的执行结果为:

import java.applet.*;

import java.awt.*;

import java.awt.event.*;

/*

<applet code=Hua width=200 height=100>

</applet>

*/

public class Hua extends Applet

int xPos,yPos;

int sum;

Image pic;

public void init()

addMouseListener(new ClickMouse());

public void paint(Graphics g)

if(sum==2)

g.drawImage(pic,xPos,yPos,200,180,super);

public class ClickMouse extends MouseAdapter

public void mouseClicked (MouseEvent mouse)

参考答案:

drawImage(pic,xPos,yPos,200,180,this); pic=getImage(getDocumentBase(),"hua.jpg"); repaint();

本题主要考查Applet小程序的应用。解答本题的关键是能够熟练掌握Applet小程序的基本理论及其执行过程。在本题中,通过内部类ClickMouse处理鼠标单击事件。g.drawImage(pic,xPos,yPos,200,180,this);语句的功能是在指定的Applet显示区内画出图片,pic=getImage(getDocumentBase(),"hua.jpg");语句功能是获取图片的URL,repaint();语句功能是重新显示图片。

计算机考试