首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在以下程序中,鼠标单击小应用程序的某一点,则会在该点显示一个图标,如果双击,则会清除该图标。且在浏览器的状态栏上会显示鼠标单击位置的坐标。运行结果如下图所示。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
在以下程序中,鼠标单击小应用程序的某一点,则会在该点显示一个图标,如果双击,则会清除该图标。且在浏览器的状态栏上会显示鼠标单击位置的坐标。运行结果如下图所示。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
admin
2009-01-15
76
问题
在以下程序中,鼠标单击小应用程序的某一点,则会在该点显示一个图标,如果双击,则会清除该图标。且在浏览器的状态栏上会显示鼠标单击位置的坐标。运行结果如下图所示。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不是增行或删行。
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全国计算机二级
相关试题推荐
假设某表单的Visible属性的初值为.F,能将其设置为.T.的方法是
在考生文件夹下完成下列操作。(1)扩展基类ListBox,创建一个名为MyListBox的新类。新类保存在名为Myclasslib的类库中,该类库文件存放在考生文件夹下。设置新类的Height属性的默认值为130,Width属性的默认值为150。
在考生文件夹下完成下列操作:1.请修改并执行程序temp.prg,该程序的功能是:根据“教师表”和“职称表”计算每位教师的“应发工资”,每个教师的“应发工资”等于:与“职称级别”相符的“基本工资”+“课时”×80×职称系数,教授的职称系数为1.4
打开考生文件夹下的sport_proieet项目,项目中有一个名为sport_form的表单文件,表单中包括3个命令按钮。请完成如下操作:(1)编写并运行程序Four.prg。程序功能是:根据“国家”和“获奖牌情况”两个表统计并生成一个
在考生文件夹下完成下列操作:1.修改并执行程序temp。该程序的功能是根据“教师表”和“课程表”计算讲授“数据结构”这门课程,并且“工资”大于等于4000的教师人数。注意:只能修改标有错误的语句行,不能修改其他语句。2.在“学校”数据库
使用如下关系:客户(客户号,名称,联系人,邮政编码,电话号码)产品(产品号,名称,规格说明,单价)订购单(订单号,客户号,订购日期)订购单名细(订单号,序号,产品号,数量)假设客户表中有客户号(关键字)C1~C10共10条客户记录,订购单表有订
在VisualFoxPro中,下列变量中需要事先定义是()。
在考生文件夹下创建一个顶层表单myform.scx(表单的标题为“考试”),然后创建并在表单中添加菜单(菜单的名称为mymenu.mnx,菜单程序的名称为mymenu.mpr)。效果如图3-8所示。(1)菜单命令“统计”和“退出”的功能都通过执行过程完
关于内存变量的调用,下列说法错误的是()。
循环队列的存储空间为Q(1:100),初始状态为front=rear=100,,经过一系列正常的入队与退队操作后,front=rear=99,则循环队列中的元素个数为()。
随机试题
属于交感神经作用的是()。
在下列混凝土的技术性能中,正确的是()。
某工程商品混凝土的目标产量为500m3,单价720/m3,损耗率4%。实际产量为550m3,单价730元/m3,损耗率3%,采用因素分析法进行分析,由于单价提高,费用增加了()元。
高填方路基施工时应考虑早开工,路面基层施工时应尽量安排晚开工,以使高填方路基()。
纳税人取得的2003年10月31日以后开具的运输发票,应当自开票之日起()内向主管国家税务局申报抵扣,超过时间的不得予以抵扣。
离差智商是根据()。
不同国家民族在追求自身梦想时可能沿循不同的路径,这是自然现象,但也可以相互_________,不断优化。无论是“中国梦”还是“美国梦”,都应防止极端和_________。极端的个人主义行为已经让美国吃了不少苦头.从华尔街的金融巨骗到校园中的变态枪手都成为范
基数效用论
Whatisthemainpurposeoftheman’strip?
HowtoWriteaDissertationI.TwonecessarypreparationsA.Planning【T1】______【T1】______B.The【T2】______ofbalancedlife【T2】
最新回复
(
0
)