首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下面是一个Applet程序,其功能是在窗口中绘制3个半径递增的圆,并用RGB三原色对这3个圆填充。要求建立一个绘制圆的类,实现根据指定颜色进行填充的功能,在主程序中通过调用这个类的方法实现圆的绘制。请改正程序中的错误(有下划线的语句),使程序能输出正确的结
下面是一个Applet程序,其功能是在窗口中绘制3个半径递增的圆,并用RGB三原色对这3个圆填充。要求建立一个绘制圆的类,实现根据指定颜色进行填充的功能,在主程序中通过调用这个类的方法实现圆的绘制。请改正程序中的错误(有下划线的语句),使程序能输出正确的结
admin
2009-01-15
127
问题
下面是一个Applet程序,其功能是在窗口中绘制3个半径递增的圆,并用RGB三原色对这3个圆填充。要求建立一个绘制圆的类,实现根据指定颜色进行填充的功能,在主程序中通过调用这个类的方法实现圆的绘制。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
程序运行结果如下:
import java.applet.*;
import java.awt.*;
import java.awt.*;
/*
<applet code="ex22_3.class" width=800 height=400 >
</applet>
*/
class CanvasCircle extends Canvas{
private Color cCircle;
public CanvasCircle(Color c){
cCircle = c;
}
public void paint(Graphics g){
int dimCricle, xCircle, yCircle;
Dimension sizeCurrent = getSize();
if (sizeCurrent.width > sizeCurrent.height){
dimCricle = sizeCurrent.width;
}
else{
dimCricle = sizeCurrent.height;
}
g.setColor(cCircle);
xCircle = (sizeCurrent.height - dimCricle) / 2;
yCircle = (sizeCurrent.width - dimCricle) / 2;
g.fillOval(xCircle, yCircle, dimCricle, dimCricle);
}
}
public class ex22_3 extends Applet{
public void init(){
GridBagLayout gbl = new GridBagLayout();
GridBagConstraints gbc = new GridBagConstraints();
CanvasCircle circleNew;
setLayout(gbl);
gbc.weightx = 1.0;
gbc.weighty = 1.0;
gbc.fill = GridBagConstraints.BOTH;
circleNew = new CanvasCircle(Color.red);
gbl.setConstraints(circleNew, gbc);
add(circleNew);
gbc.weightx = 1.5;
gbc.weighty = 1.5;
circleNew = new CanvasCircle(Color.green);
gbl.setConstraints(circleNew, gbc);
add(circleNew);
gbc.weightx = 2.0;
gbc.weighty = 2.0;
circleNew = new CanvasCircle(Color.blue);
gbl.setConstraints(circleNew, gbc);
add(circleNew);
}
}
ex22_3, h tml
<HTML>
<HEAD>
<TITLE>ex22_3</TITLE>
</HEAD>
<BODY>
<applet code="ex22_3.class" width=800 height=400 >
</applet>
</BODY>
</HTML>
选项
答案
sizeCurrent.width<sizeCurrent.height xCircle= (sizeCurrent.width-dimCricle) /2 yCircle=(sizeCurrent.height-dimCricle)/2
解析
本题主要考查根据需要设计能完成绘制圆的Canvas子类的编程,以及与Applet图形绘制的基本操作相结合的综合应用。
解题关键是CanvasCircle类的编写,颜色作为对外的接口,根据颜色参数来确定绘制圆的颜色,因此通过类的构造方法从外界获得这个参数,paint()是重载了Canvas的方法,初始化CanvasCircle对象之后,自动执行实现绘制。本题中,第1处,根据条件判断式的含义,很容易得到答案;第2处,要明白窗口getSize().width属性,对应的参数应该是xCircle,同理第3处 getSize().height属性对应的参数是yCircle。
转载请注明原文地址:https://www.kaotiyun.com/show/z1np777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
在考生文件夹下创建一个下拉式菜单mymenu.mnx,并生成菜单程序mymenu.mpr。运行该菜单程序时会在当前VFP系统菜单的末尾追加一个“考试”子菜单,如图2—11所示。菜单命令“计算”和“返回”的功能都通过执行过程完成。菜单命
在考生文件夹下已有xuesheng和chengji两个表,现请在考生文件夹下完成以下简单应用:(1)利用查询设计器创建查询,根据xuesheng和chengi表统计出男、女生在“英语”课程上各自的“最高分”、“最低分”和“平均分”。查询结果包含“
当order_detail表中的单价修改后,应该根据该表的“单价”和“数量”字段修改order_list表的总金额字段,现在编写程序实现此功能,具体要求和注意事①根据order_detail表中的记录重新计算order_list表的总金额字段的值
(1)将ordet_list1表中的全部记录追加到order_list表中,然后川SOLSELECT语句完成查询:按总金额降序列出所有客户的客户号、客户名及其订单号和总金额,并将结果存储到results表中(其中客户号、客户名取自customer表,订单
在考生文件夹下,打开ec数据库,完成如下综合应用(所有控件的属性必须在表单设计器的属性窗口中设置):设计一个文件名和表单名均为form2的表单,表单标题为“客户基本信息”。要求该表单上有“女客户信息查询”(Command1)、“客户信息
设数据库表中有一个C型字段NAME。打开表文件后,要把内存变量NAME的字符串内容输入到当前记录的NAME字段,应当使用命令
在VisualFoxPro中,下面描述正确的是
下面命令的输出结果是:DIMENSIONa(10)?a(1)
要将一个弹出式菜单作为某个控件的快捷菜单,需要在该控件的某事件代码中调用弹出式菜单程序的命令。这个事件是
随机试题
EuphemismDefinitionlexicalmeaning:—speakingwithgoodwordsorin【L1】________apolite,roundaboutand【L2】________
什么是硬度?
Michaelstudiedhardbeforetheexaminationinmathematics,andit______.HemadeanA.
某男,63岁。风湿性心脏病25年。心悸烦躁,呼吸短促,不能平卧,喘促不宁,精神萎靡,唇甲青紫,四肢厥冷,舌质淡,苔白,脉细微欲绝。治疗方剂选用
预防地方性甲状腺肿最方便、可靠的措施是
A.脂溶性增大,易吸收B.脂溶性增大,易离子化C.水溶性增大,易透过生物膜D.水溶性减小,易离子化E.水溶性增大,解离度增大结构中引入较大的烃基
项目计算期指项目财务评价中为动态分析所设定的期限,包括()。
吉尔福特提出的智力理论是()
老吴在年底对年初购买的投资产品收益进行了梳理:50元买入的甲公司股票已按54元卖出;乙公司股票价格仍为20元,按照每股1.2元进行了现金分红;丙公司股票价格也没变,按照每20股送1股进行了股票分红;某银行理财产品的年收益率是6%。上述投资产品中年收益率最高
Electriceelsusechargesto______preyandalsostunthembeforetheyeatthem.
最新回复
(
0
)