首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在以下程序中,鼠标单击小应用程序的某一点,则会在该点显示一个图标,如果双击,则会清除该图标。且在浏览器的状态栏上会显示鼠标单击位置的坐标。运行结果如下图所示。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
在以下程序中,鼠标单击小应用程序的某一点,则会在该点显示一个图标,如果双击,则会清除该图标。且在浏览器的状态栏上会显示鼠标单击位置的坐标。运行结果如下图所示。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
admin
2009-01-15
64
问题
在以下程序中,鼠标单击小应用程序的某一点,则会在该点显示一个图标,如果双击,则会清除该图标。且在浏览器的状态栏上会显示鼠标单击位置的坐标。运行结果如下图所示。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不是增行或删行。
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Example3_1 extends Applet
{
int xPoint, yPoint;
int sum;
Image displayIm;
public void init()
{
displayIm = getImage("ms.jpg");
addMouseListener(new SClickMouse()) ;
sum = 2;
}
public void paint(Graphics g)
{
if(sum == 1)
g.drawImage(displayIm, xPoint, yPoint, this);
else
g.fillRect(xPoint, yPoint, 60, 60);
}
public class SClickMouse implements MouseListener
{
public void mouseClicked(MouseEvent mouse)
{
sum = mouse.getClickCount();
xPoint = mouse.getX();
yPoint = mouse.getY();
paint();
}
public void mouseEntered(MouseEvent mouse)
{
}
public void mouseExited(MouseEvent mouse)
{}
public void mousePressed(MouseEvent mouse)
{
xPoint = mouse.getX();
yPoint = mouse.getY();
showStatus("x="+xPoint+",y-"+yPoint);
}
public void mouseReleased(MouseEvent mouse)
}
}
}
}
Exampie3_1.html:
<html>
<head><title>Example3_1</title></head>
<body>
<applet code="Example3_1.class" width="400" height="500">
</applet>
</body>
</html>
选项
答案
①displayIm=getImage(getDocumentBase(),"ms.jpg") 第一处也可改作displayIm=getImage(getCodeBase(),"ms.jpg") ②g.clearRect(xPoint,yPoint,60,60) ③repaint()
解析
Applet获得图像有两种方式,一种是 getImage(URL url),另一种是getImage(URL url, String name)。init()方法用来初始化小应用程序,首先是将图像文件读入内存,然后为小应用程序添加鼠标点击事件。paint()方法向页面绘制图像,题中的if-else语句表示用户单击鼠标则在鼠标单击的位置显示图片,用户多次点击鼠标,则清除该点右下方长宽均为60的矩形区域内的图像。SClickMouse实现了鼠标监听器。mouseClicked中获取鼠标点击的位置和点击的次数。mousePressed方法获得鼠标按下的坐标,并将坐标值显示在状态栏中。
第一种方法所使用的URL必须是包含图像文件名的绝对URL,所以本处不能填使用文件名作参数。采用第二种获得图像的方式时,如果图像和Applet在同一文件夹可使用 getCodeBase()获得相应的URL,当图像和 Applet所属的HTML文件在同一文件夹时,可以采用getDocumentBase()获得相应的URL。所以第一个错误可以改为getDocument Base(),也可以改为getCodeBase()。
第二处错误,Graphics对象作图时,可以使用 clearRect()方法清除某一个区域的图形,而 fillRect()方法只是根据当前颜色(本题中为黑色)画出一个实心矩形。在程序要求Applet绘制图形时,只能调用repaint()方法,此方法会自动调用paint()方法。故第三个错误应该改成 repaint()方法。
转载请注明原文地址:https://kaotiyun.com/show/YTnp777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
在考生文件夹下完成如下简单应用:1.打开表单MYFORM4-4,把表单(名称为Forml)标题改为“欢迎您”,将文本“欢迎您访问系统”(名称为Label1的标签)改为25号黑体。最后在表单上添加“关闭”(名称为command1)命令按钮,单击此按
1.在考生文件夹下新建一个名为“供应”的项目文件。2.将数据库“供应零件”加入到新建的“供应”项目中。3.通过“零件号”字段为“零件”表和“供应”表建立永久性联系,其中,“零件”表是父表,“供应”表是子表。4.为“供应”表的“数量”字段设
在考生文件夹下有一个名为myform.scx的表单文件。打开该表单,然后在表单设计器环境下完成如下操作:1.在属性窗口中修改表单的相关属性,使表单在打开时,在VisualFoxPro主窗口内居中显示。2.在属性窗口中修改表单的相关属性
(1)在考生文件夹下建立一个文件名和表单名均为oneform的表单,该表单中包括两个标签(Label1和Label2)、—个选项按钮组(OptionGroupl)、一个组合框(Combol)和两个命令按钮(Comand1和Command2),Label1和
在考试文件夹下完成下列操作:1.在考生文件夹下“人事管理”数据库中,为“职工”表中的“性别”字段设置有效性规则,只能取“男”或“女”;默认值是“男”。2.建立快捷菜单cd,选项有打开、关闭和退出。生成同名的菜单程序文件。3.为“职
下列关于变量的叙述中,正确的一项是()。
开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做()。
下列关于SQL对表的定义的说法中,不正确的选项是()。
关闭表单的程序代码是ThisForm.Release,Release是
负责数据库中查询操作的数据库语言是()。
随机试题
螺杆钻具的流量太小,会导致螺杆钻具的()。
资产转移理论产生于
A.戒烟B.合理营养C.早期发现、早期治疗D.控制环境污染E.预防复发和转移肿瘤的二级预防是
管道系统进行压力试验前,应从待试管道拆下或加以隔离的组成件有()。
自动喷水灭火系统,按装有喷头的管网内平时是否充水,可分为干式系统、湿式系统、干湿两用系统、()系统等。
会计年度就是会计期间。()
展览:铭记:历史
基于以下题干:据1999年所作的统计,在美国35岁以上的居民中,10%患有肥胖症。因此,如果到2009年美国的人口将达到4亿的估计是正确的,那么,到2009年美国35岁以上患肥胖症的人数将达到2000万。
实践在认识中的决定作用表现在()
AABCInternational)oneofEurope’sleadingeducationalorganizations,haswarnedshareholderstoexpectafallinfullyearpr
最新回复
(
0
)