首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下面是一个Applet程序,实现实心或者空心矩形的绘制。要求鼠标在Applet窗口中拖动实现矩形的绘制,可以选择填充或者空心,有按钮用来清空窗口中的图像。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行
下面是一个Applet程序,实现实心或者空心矩形的绘制。要求鼠标在Applet窗口中拖动实现矩形的绘制,可以选择填充或者空心,有按钮用来清空窗口中的图像。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行
admin
2009-01-15
117
问题
下面是一个Applet程序,实现实心或者空心矩形的绘制。要求鼠标在Applet窗口中拖动实现矩形的绘制,可以选择填充或者空心,有按钮用来清空窗口中的图像。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
程序运行结果如下:
import java.awt.*;
import java.applet.*;
/*
<applet code="ex13_3.class" width=800 height=400 >
</applet>
*/
public class ex13_3 extends Applet{
private Button btnClear;
private CheckboxGroup cbg;
private Checkbox chk1, chk2;
private int upX, upY;
private int downX, downY;
private boolean bDraw, bClear, bStyle;
public void init(){
bDraw = false;
bClear = false;
bStyle = false;
setLayout(null);
cbg = new CheckboxGroup();
chk1 = new Checkbox("Hollow", cbg, true);
chk2 = new Checkbox("Filled", cbg, false);
chk1.reshape(80,getSize().height-80,80,25);
chk2.reshape(160,getSize().height-80,80,25);
add(chk1);
add(chk2);
btnClear = new Button("clear");
btnClear.reshape(240,getSize().height-80,80,25);
add(btnClear);
}
public void paint(Graphics g){
if(bDraw){
if(upX > downX && upY > downY){
if (bStyle)
g. fillRect (downX, downY, upX - downX, upY - downY);
else
g.drawRect(downX, downY, upX - downX, upY - downY);
}
else if(upX > downX && upY < downY){
if(bStyle)
g.fillRect(downX, upY, upX - downX, downy - upY);
else
g.drawRect(downX, upY, upX - downX, downy - upY);
}
else if(upX < downX && upY > downY){
if(bStyle)
g.fillRect(upX, downY, downX - upX, upY - downY);
else
g.drawRect(upX, downY, downX - upX, upY - downY);
}
else if(upX < downX && upY < downY){
if(bStyle)
g.fillRect(upX, upY, downX - upX, downy - upY);
else
g.drawRect(upX, upY, downX - upX, downy - upY);
}
bDraw = false;
}
if(bClear)(
g.clearRect(0,0, getSize().height, getSize().width);
bClear = false;
}
}
public void update(Graphics g){
paint(g);
}
public boolean mouseUp(Event e, int x, int y){
upX = x;
upY = y;
bDraw = true;
repaint();
return true;
}
public boolean mouseDown(Event e, int x, int y){
downX = x;
downY = y;
return true;
}
public boolean action(Event e, Object o){
if(e.target == btnClear)(
bClear = true;
repaint();
}
if(chkl.getState() == true){
bStyle = true;
}
if(chk2.getState() == true){
bStyle = false;
}
return true;
}
}
ex13_3.html
<HTML>
<HEAD>
<TITLE>ex13_3</TITLE>
</HEAD>
<BODY>
<applet code="ex13_3.class" width=800 height=400 >
</applet>
</BODY>
</HTML>
选项
答案
g.clearRect(0,0,getSize().width,getSize().height) bStyle=false bStyle=true
解析
本题主要考查Applet图形界面编程与鼠标事件相结合进行简单的图形绘制。解题关键是熟悉Applet中的事件机制,会利用鼠标事件进行简单的矩形绘制,通过mouseUp(),mouseDown()来获取鼠标移动的坐标,熟悉CheckboxGroup类Checkbox类的用法,通过Checkbox来控制矩形是否填充。本题中,第1个空,对象g的方法clearRect()的最后两个参数应该对调因为第3个参数是代表矩形的宽度,第四个是高度;第2个空,点击第1个Checkbox是不用填充,这里bStyle=false是表示用填充;第3个空,解释和第2个空的相似,正好相反。
转载请注明原文地址:https://kaotiyun.com/show/2IID777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
把下面的六个图形分为两类,使每一类图形都有各自的共同特征或规律,分类正确的一项是:
把下面的六个图形分为两类,使每一类图形都有各自的共同特征或规律,分类正确的一项是:
古代中国数秘术与古希腊数秘术的区别在于,前者侧重解象,后者侧重数术。中国的数秘术后来发展成了更具方法论意义的宇宙形而上学,与算术渐行渐远、________。填入画横线部分最恰当的一项是:
下列古诗中涉及的历史事件,按先后顺序排列正确的是:①千寻铁锁沉江底,一片降幡出石头②剑外忽传收蓟北,初闻涕泪满衣裳③千载琵琶作胡语,分明怨恨曲中论④江东弟子多才俊,卷土重来未可知
你是单位最新的员工,老同志们总是说现在的年轻人娇生惯养,你很尴尬,同时,老同志对你不信任,不让你独立完成工作。你怎么做?
符合下列哪一情形而在五年以内再犯应当判处有期徒刑以上刑罚之罪的不构成累犯?()
关于黄淮海平原的叙述,正确的是()。
中国的英文名称“CHINA”的小写就是“瓷器”的意思,“CHINA”的英文发音源自景德镇的历史名称“昌南”,并以此突出景德镇瓷器在世界上的影响和地位。以下不属于景德镇四大传统名瓷的是()。
下面关于气候变化与绿色碳汇说法不正确的是()。
胡锦涛在十八大报告中指出,要加快推进国防和军队现代化,按照国防和军队现代化建设“三步走”战略构想.加紧完成机械化和信息化建设双重历史任务,力争到二〇二〇年基本实现()。
随机试题
《红与黑》是法国19世纪杰出的批判现实主义作家________的代表作。
简述良好意志品质的特征。
A.金玲子散B.半夏厚朴汤C.天台乌药散D.柴胡疏肝散具有行气散结,降逆化痰功用的方剂是
下列引起真菌性肺炎的病原菌为
患者,男性,68岁,右下牙龈癌,拟行颌颈联合根治术加胸大肌、肋骨复合组织瓣修复术。该块骨肌皮瓣所带的肋骨源于
【背景资料】某公司中标污水处理厂升级改造工程,处理规模为70万m3/d,其中包括中水处理系统。中水处理系统的配水井为矩形钢筋混凝土半地下室结构,平面尺寸17.6×14.4,高11.8,设计设计水深9m;底板、顶板厚度分别为1.1m,0.25
共有人没有约定共有类型的,除共有人具有家庭关系等外,该共有视为()。
眶下神经阻滞麻醉口内注射法进针点是()。
在考生文件夹中,存有文档WT1.DOC,其内容如下。【文档开始】本专业培养目标是计算机专业的技术应用型人才,他们应该掌握计算机软件、硬件及系统的基本理论、基本方法和基本技能,能够从事计算机及相关领域的应用技术工作及软、硬件维护和一般应用系统的开发
Marywenttothecinemawithherbrother,________________________(对此我很吃惊).
最新回复
(
0
)