java试验报告3.docx

上传人:b****5 文档编号:2779987 上传时间:2022-11-15 格式:DOCX 页数:32 大小:89.97KB
下载 相关 举报
java试验报告3.docx_第1页
第1页 / 共32页
java试验报告3.docx_第2页
第2页 / 共32页
java试验报告3.docx_第3页
第3页 / 共32页
java试验报告3.docx_第4页
第4页 / 共32页
java试验报告3.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

java试验报告3.docx

《java试验报告3.docx》由会员分享,可在线阅读,更多相关《java试验报告3.docx(32页珍藏版)》请在冰豆网上搜索。

java试验报告3.docx

java试验报告3

政法学院

本科学生实验报告

(三)

姓名学院计算机科学学院

专业计算机科学与技术班级

实验课程名称JAVA使用教程

试验时间年月日

指导教师及职称

实验成绩

开课时间学年1学期

 

政法学院实验管理中心印制

实验题目

组建和事件

小组合作

否○

姓名

班级

学号

一、实验目的:

1、掌握java图形用户界面设计常用类及其各自重要方法的应用。

2、掌握java事件处理模式并熟练掌握文本框上事件处理的方法。

4、进一步掌握javaAWT组件、Swing组件及事件编程的各种方法。

5、掌握对话框的编制和事件处理方法。

6、掌握鼠标焦点事件、鼠标事件及键盘事件的处理方法。

二、实验环境:

装有jdk1.6及Eclipse3.4.1的计算机一台

三、实验内容与步骤:

1、算术测试:

请读懂下面模板程序,将其补充完整并调试运行。

1、启动Eclipse3.4.1→新建javaproject→name:

myproject_01→javapackage→name:

zujian→javaclass→name:

MainClass

程序如下:

packagezujian;

importjava.awt.*;

importjava.awt.event.*;

classTeacher

{intnumberOne,numberTwo;

Stringoperator="";

booleanright;

publicintgiveNumberOne(intn)

{numberOne=(int)(Math.random()*n)+1;

returnnumberOne;

}

publicintgiveNumberTwo(intn)

{numberTwo=(int)(Math.random()*n)+1;

returnnumberTwo;

}

publicStringgiveOperator()

{doubled=Math.random();

if(d>=0.5)

operator="+";

else

operator="-";

returnoperator;

}

publicbooleangetRight(intanswer)

{if(operator.equals("+"))

{if(answer==numberOne+numberTwo)

right=true;

else

right=false;

}

elseif(operator.equals("-"))

{if(answer==numberOne-numberTwo)

right=true;

else

right=false;

}

returnright;

}

}

classComputerFrameextendsFrameimplementsActionListener

{TextFieldtextOne,textTwo,textResult;

ButtongetProblem,giveAnwser;

LabeloperatorLabel,message;

Teacherteacher;

ComputerFrame(Strings)

{super(s);

teacher=newTeacher();

setLayout(newFlowLayout());

textOne=newTextField(10);//创建textOne,其可见字符长是10

textTwo=newTextField(10);//创建textTwo,其可见字符长是10

textResult=newTextField(10);//创建textResult,其可见字符长是10

operatorLabel=newLabel("+");

message=newLabel("你还没有回答呢");

getProblem=newButton("获取题目");

giveAnwser=newButton("确认答案");

add(getProblem);

add(textOne);

add(operatorLabel);

add(textTwo);

add(newLabel("="));

add(textResult);

add(giveAnwser);

add(message);

textResult.requestFocus();

textOne.setEditable(false);

textTwo.setEditable(false);

getProblem.addActionListener(this);//将当前窗口注册为getProblem的ActionEvent事件监视器

giveAnwser.addActionListener(this);//将当前窗口注册为giveAnwser的ActionEvent事件监视器

textResult.addActionListener(this);//将当前窗口注册为textResult的ActionEvent事件监视器

setBounds(100,100,450,100);

setVisible(true);

validate();

addWindowListener(newWindowAdapter()

{publicvoidwindowClosing(WindowEvente)

{System.exit(0);

}

}

);

}

publicvoidactionPerformed(ActionEvente)

{if(e.getSource()==getProblem)//判断事件源是否是getProblem

{intnumber1=teacher.giveNumberOne(100);

intnumber2=teacher.giveNumberTwo(100);

Stringoperator=teacher.giveOperator();

textOne.setText(""+number1);

textTwo.setText(""+number2);

operatorLabel.setText(operator);

message.setText("请回答");

textResult.setText(null);

}

if(e.getSource()==giveAnwser)//判断事件源是否是giveAnwser

{Stringanswer=textResult.getText();

try{

intresult=Integer.parseInt(answer);

if(teacher.getRight(result)==true)

{message.setText("你回答正确");

}

else

{message.setText("你回答错误");

}

}

catch(NumberFormatExceptionex)

{message.setText("请输入数字字符");

}

}

textResult.requestFocus();

validate();

}

}

publicclassMainClass

{publicstaticvoidmain(Stringargs[])

{ComputerFrameFrame;

Frame=newComputerFrame("算术运算");//创建窗口,其标题为:

算术测试

}

}

调试无误,运行结果如图:

2、信号灯:

请读懂下面模板程序,将其补充完整并调试运行。

1、启动Eclipse3.4.1→新建javaproject→name:

myproject_01→javapackage→name:

zujian→javaclass→name:

SignalMainClass

程序如下:

packagezujian;

publicclassSignalMainClass

{

publicstaticvoidmain(Stringargs[])

{SignalFrameframe;

frame=newSignalFrame();

frame.setTitle("信号灯");

}

}

2、新建javaclass→name:

SignalFrame

程序如下:

packagezujian;

importjava.awt.*;

importjava.applet.*;

importjava.awt.event.*;

classSignalCanvasextendsCanvas

{intred,green,yellow,x,y,r;

SignalCanvas()

{setBackground(Color.white);

}

publicvoidsetRed(intr)

{red=r;

}

publicvoidsetGreen(intg)

{green=g;

}

publicvoidsetYellow(inty)

{yellow=y;

}

publicvoidsetPosition(intx,inty)

{this.x=x;

this.y=y;

}

publicvoidsetRadius(intr)

{this.r=r;

}

publicvoidpaint(Graphicsg)

{if(red==1)

{g.setColor(Color.red);

}

elseif(green==1)

{g.setColor(Color.green);

}

elseif(yellow==1)

{g.setColor(Color.yellow);

}

g.fillOval(x,y,2*r,2*r);

}

}

publicclassSignalFrameextendsFrameimplementsItemListener

{Choicechoice;

SignalCanvassignal=null;

StringitemRed="红灯",itemYellow="黄灯",itemGreen="绿灯";

publicSignalFrame()

{choice=newChoice();//创建choice

choice.add(itemRed);//创建choice添加itemRed

choice.add(itemYellow);//创建choice添加itemYellow

choice.add(itemGreen);//创建choice添加itemGreen

choice.addItemListener(this);//将当前窗口注册为choice的ItemEvent事件监视器

add(choice,BorderLayout.NORTH);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 生物学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1