首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下面是一个Applet程序,其功能是在绘图区域中通过鼠标的移动来绘制直线,并且有清除绘图区域按钮,用来清除已经绘制的图像。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 程序运行结果
下面是一个Applet程序,其功能是在绘图区域中通过鼠标的移动来绘制直线,并且有清除绘图区域按钮,用来清除已经绘制的图像。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 程序运行结果
admin
2013-02-25
63
问题
下面是一个Applet程序,其功能是在绘图区域中通过鼠标的移动来绘制直线,并且有清除绘图区域按钮,用来清除已经绘制的图像。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
程序运行结果如下:
import.java.awt.*;
import.java.applet.*;
/*
<applet code=exl_3.class width=800 height=400>
</applet>
*/
public class exl_3 extends Applet
{
private Button btn;
private Boolean bDraw, bClear;
private int upX,upY,downX,downY;
public void init()
{
setLayout(null);
bClear=false;
bDraw=false;
btn=new Button(”clear”);
btn.reshape(250,150, 70,30);
add(btn);
}
public void paint(Graphics g)
{
if(bClear)
{
g.clearRect(0,0,getSize().width,getSize().height);
bClearr=false;
}
if(bDraw)
{
g.drawLine(upY,upX,downY,downX)
bDraW=false;
}
}
public void update(Graphics g)
{
paint(g);
}
Public boolean mouseDown(Event event,int x,int y)
{
downX=x;
downY=y;
return true;
}
public boolean mouseUp(Event event,int x,int y)
{
upX=x;
upY=y;
bDraw=false;
repaint();
return true;
}
public boolean action(Event event,Object Object)
{
if(event.target!=clear)
{
bClear=true;
repaint()
}
return true;
}
}
ex1_3.html
<HTML>
<HEAD>
<TITLE> ex1_3 </TITLE>
</HEAD>
<BODY>
<applet code="exl_3.class" width=800 height=400>
</applet>
</BODY>
</HTML>
选项
答案
g.drawLine(downX,downY,upX,upY) bDraw=true event.target= =btn
解析
本题主要考查Applet的图形绘制、鼠标事件处理和用户界面的相关知识点以及会使用boolean类型的变量控制程序的流程。解题关键是,熟悉Applet的图形绘制,会用Graphics类的基本绘图方法,例如drawLine()方法;熟悉鼠标事件处理,并能与图形绘制和用户界面设计相结合做简单的综合应用;掌握一定的程序流程的控制思想。本题中,主要的思想是首先判断用户将鼠标按下与放开的坐标位置,然后使用drawLine()方法绘制由鼠标按下点到放开点的直线。第1处,将drawLine()方法的几个参数颠倒,要明白此方法的几个参数的确切含义才能正确修改。第2处,将bDraw变量的值设为false,这导致程序在调用paint()方法时不能进入g.drawLine语句,应改为true。第3处,有两个错误:首先要明确clear是btn对象显示在用户界面的名称,而不是作为对象来与event.target做比较,因此应改为btn,这在调试时就会出现变量无法解析的错误;其次,符号!=应改为符号= =,这里要确定单击btn事件发生才能做清除,否则不能达到预期效果。
转载请注明原文地址:https://kaotiyun.com/show/8R2p777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
以下关于文件的描述,错误的是()。
以下关于Python中try语句的描述,错误的是()。
以下程序的输出结果是()。 ls1=[1,2,3,4,5] ls2=ls1 ls2.reverse() print(ls1)
下面对于类的说法错误的是()。
某系统结构图如下所示: 该系统结构图的最大扇出数是()。
操作系统在控制和管理进程过程中,进程存在的唯一标志是数据结构()。
数据库系统中,存储在计算机内有结构的数据集合称为()。
下列情况中,不会使线程返回所持有的对象锁的是
通过实现Rmmable接口创建线程,请在下面横线处填写代码完成此程序。publicclassThreadTest{publicstaticvoidmain(Stringargs[]){
下列Java标识符,错误的是()。
随机试题
(2010、2007年真题)按照比较优势理论,一国应该进口()
A.全身散在斑丘疹、水疱疹B.感染性休克、惊厥、呼吸衰竭C.阵发性痉挛性咳嗽、吸气末鸡鸣样吼声D.发热、流涕、结膜充血、口腔科氏斑E.发热、全身皮肤充血、鸡皮样皮疹百日咳的临床特点()
原告张三与市有线电视台之间于2007年确立了有线电视收视服务合同关系,一直按时交费。2008年6月,电视台在播放电视连续剧时,大量插播广告,甚至平均一集70分钟左右的电视剧中插播了约二十七八分钟的广告,其中还包括一条治疗性病的广告。据此,张三向该市某区人民
背景资料某北方城市为解决水源问题,实施引黄入市工程,新建一座大型给水厂,主要单位工程有沉淀池、滤池等。项目经理部为加强施工管理,在门口设立了公示牌。公示牌的内容包括工程概况牌、安全生产文明施工牌、安全纪律牌。在工程概况牌上标明了工程规模、性质、用途。施
甲乙丙三朋友去参观车展,看到一款轿车。甲说:“这不是‘奇瑞’,也不是‘荣威’。”乙说:“这不是‘奇瑞’,而是‘红旗’。”丙说:“这不是‘红旗’,而是‘奇瑞’。”后来,车展管理员说:“三人中,有一个人的两个判断都对;另一个人的两个判断都错;第三人的两个判断一
北京市某公司发现有年收入在12万元以上的人员未申报缴纳个人所得税。如果上述断定为真,则以下哪项不能确定真假?()I.北京市某公司所有年收入在12万元以上的人员都未申报缴纳个人所得税。Ⅱ.北京市某公司所有年收入在12万元以上的人员都申报缴纳了
(2016年辨析56)有人认为:“物权的标的物不论辗转流入何人之手,物权人都有权追及物之所在而支配该物。”请运用相关民法理论和规定加以辨析。
中华人民共和国成立初期,建立社会主义国营经济的主要途径是
马克思主义认为,共产主义社会是()
阅读以下说明,回答问题1至问题5,将解答填入对应的解答栏内。[说明]某公司两分支机构之间的网络配置如图4-1所示,为保护通信安全,在路由器router-a和router-b上配置IPSec安全策略,对192.168.8.0/24网段和192
最新回复
(
0
)