首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下面是一个Applet程序,实现实心或者空心矩形的绘制。要求鼠标在Applet窗口中拖动实现矩形的绘制,可以选择填充或者空心,按钮用来清空窗口中的图像。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或
下面是一个Applet程序,实现实心或者空心矩形的绘制。要求鼠标在Applet窗口中拖动实现矩形的绘制,可以选择填充或者空心,按钮用来清空窗口中的图像。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或
admin
2009-01-15
68
问题
下面是一个Applet程序,实现实心或者空心矩形的绘制。要求鼠标在Applet窗口中拖动实现矩形的绘制,可以选择填充或者空心,按钮用来清空窗口中的图像。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
源程序代码文件清单如下:
import java.awt.*;
import java.applet.*;
/*
<applet code="ex16_3.class" width=800 height=400>
</applet>
*/
public class ex16_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("ctear");
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(chk1.getState()==true)
{
bStyle=true;
}
if(chk2.getState()==true)
{
bStyle=false;
}
return true;
}
}
ex9_3.html
<HTML>
<HEAD>
<TITLE>ex9_3</TITLE>
</HEAD>
<BODY>
<applet code="ex9_3.class" width=800 height=400>
</applet>
</BODY>
</HTML>
选项
答案
g.clearRect(0,0,getSize().width,gets ize().height) bStyle=false bStyle=true
解析
本题主要考查Applet图形界面编程与鼠标事件相结合进行简单的图形绘制。解题关键是熟悉Applet中的事件机制,会利用鼠标事件进行简单的矩形绘制,通过mouseUp(), mouseDown()来获取鼠标移动的坐标,熟悉 CheckboxGroup类Checkbox的用法,通过 Checkbox来控制矩形是否填充。本题中,第1个空,对象g的方法clearRect()的最后两个参数应该对调,因为第3个参数是代表矩形的宽度,第4个是高度;第2个空,第1个Checkbox不用填充,这里bStyle=false是表示用填充;第3个空,和第2个空正好相反。
转载请注明原文地址:https://kaotiyun.com/show/tQnp777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
两个或两个以上模块之间关联的紧密程度称为
在考生文件夹下完成下列操作。(1)扩展基类ListBox,创建一个名为MyListBox的新类。新类保存在名为Myclasslib的类库中,该类库文件存放在考生文件夹下。设置新类的Height属性的默认值为130,Width属性的默认值为150。
在考生文件夹下完成如下简单应用:1.modil.prg程序文件中SQLSELECT语句的功能是查询目前用于3个项目的零件(零件名称),并将结果按升序存入文本文件results.txt中。给出的SQLSELECT语句中在第1、3、5行各有一处错
在考生文件夹下有一表单文件formone.scx,其中包含一个文本框和一个命令按钮。打开该表单文件,然后在表单设计器环境下完成如下操作:1.将文本框和命令按钮两个控件设置为顶边对齐。2.将文本框的默认值设置为0。3.将表单的标
(1)建立项目文件,文件名为myproj。(2)将数据库“图书借阅”添加到项目中。(3)建立自由表mytable(不要求输入数据),表结构为:姓名字符型(8)电话号码字符型(15)性别逻辑型(4)将考生文件夹下的自由表m
假定一个表单里有一个文本框Text1和一个命令按钮组CommandGroup1。命令按钮组是一个容器对象,其中包含Command1和Command2两个命令按钮。如果要在Command1命令按钮的某个方法中访问文本框的Value属性值,正确的表达式是(
开发大型软件时,产生困难的根本原因是
定义无符号整数类为UInt,下面可以作为类UInt实例化值的是
将二进制数11101011111转换成十六进制数是
请选择正确的语句填入下列程序的横线处。importjavax.Swing.*;importjava.awt.*;importjava.awt.event.*;publicclassex46
随机试题
简述Y理论的观点。
风湿性心脏病二尖瓣狭窄发生栓塞时,最常见的栓塞部位在
2020年6月,某企业发生以下交易或事项:支付诉讼费用10万元,固定资产报废净损失8万元,对外公益性捐赠支出5万元,支付税收滞纳金1万元,该企业2020年6月利润表“营业外支出”项目的本期金额为()万元。
下列各项属于非财务指标的有()。
德育过程的主要矛盾是()。
下列有关进化论内容的表述中,不正确的是:
某学生做作业时,常常依据身边老师的面部表情来判断自己做题的对错并迅速更改答案。这位学生的认知风格很可能属于()
"Howareyoukeeping?""Look(31)yourself"."GoodHealth"."Here’syourhealth"."Health,wealthandhappiness"."Ifyou’rehea
Thefilmofthedigitalcamera______.Howcanyoufreeupthespaceofyourdigitalcamera?
WasteNot,WantNotFeedingthe9Billion:TheTragedyofWasteA)By2075,theUnitedNations’mid-rangeprojectionforglobal
最新回复
(
0
)