早教吧 育儿知识 作业答案 考试题库 百科 知识分享
早教吧考试题库频道 --> 计算机类考试 -->软考中级 -->

阅读以下说明和JAVA 2代码,将应填入(n)处的字句写在对应栏内。[说明] 以下程序实现了在applet里移

题目

阅读以下说明和JAVA 2代码,将应填入(n)处的字句写在对应栏内。

[说明]

以下程序实现了在applet里移动图形文件,仔细阅读代码和相关注释,将程序补充完整。

[代码6-1]

import j ava. awt. *;

import j ava.awt.event.*;

import java.applet. Applet;

public class AppCIU extends Applet implements MouseMotionListener, MouseListener

{

Image img nClick=over(this) title=放大; // 声明 Image 类类型的变量 img nClick=over(this) title=放大

int x=70,y=60,posX=70,posY=60,dx,dy;

public void init ( )

{

img nClick=over(this) title=放大=getImage ( getCodeBase ( ) ,"mouse.gif" ); //载入影像

addMouseListener ( this );

addMouseMotionListener ( this );

}

public void mousePressed ( MouseEvent e )

{

dx=e.getX()-posX; //取得按下之点与基准点X方向的距离

dy=e.getY()-posY; //取得按下之点与基准点Y方向的距离

}

public void mouseDragged ( MouseEvent e )

{

(1)

(2)

if ( dx>0 && dx<120 && dy>0 && dy<60 ) //如果指针落在图形上方

{

Graphics g=getGraphics ( );

(3)

}

}

public void paint ( Graphics g )

{

(4)

(5)

(6)

}

public void mouseMoved ( MouseEvent e ) {};

public void mouseReleased ( MouseEvent e ) {};

public void mouseEntered ( MouseEvent e ) {};

public void mouseExited ( MouseEvent e ) {};

public void mouseClicked ( MouseEvent e ) {};

}

参考答案
正确答案:(1)x=e.getX()-dx; (2)y=e.getY()-dy; (3)update(g); (4)g.drawImage(img onClick=over(this) title=放大xy12060this); (5)posX=x; (6)posY=y; 注:其中(1)和(2)可互换。(5)和(6)可互换。
(1)x=e.getX()-dx; (2)y=e.getY()-dy; (3)update(g); (4)g.drawImage(img nClick=over(this) title=放大x,y,120,60,this); (5)posX=x; (6)posY=y; 注:其中(1)和(2)可互换。(5)和(6)可互换。 解析:本题程序实现了在applet里移动图形文件。对于(1)为取得拖曳时基准点的X坐标[x=e.getX()-dx]; (2)取得拖曳时基准点的Y坐标[y=e.getY()-dy];(3)清空画面为背景颜色,再调用paint()[update(g)]; (4)将img nClick=over(this) title=放大画在applet上[g.drawImage(img nClick=over(this) title=放大,x,y,120,60,this);];(5)更新基准点的X坐标[posX=x;];(6)更新基准点的Y坐标[posY=y;]。