实验报告模板
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
(2013 / 2014 学年第二学期)
课程名称Java 语言程序设计
实验名称综合图形界面程序设计
实验时间2014年 5月 5日
指导单位计算机学院软件教学中心
指导教师薛景
学生姓名臧玉付班级学号12001037
计算机科学与技术学院(系)计算机学院专业
(计算机通信)
实验名称综合图形界面程序设计指导教师薛景
实验类型上机实验学时2实验时间2014-5-5
一、实验目的
1.学习使用 Java Swing 设计 GUI界面
2.学习 Java 的事件监听机制的基本原理
3.学习监听器处理 Java 中的事件
二、实验环境
1.每位同学配备实验计算机一台
2.安装 JDK和 Eclipse
三、实验内容
1、编写一个算数测试小软件,用来训练小学生的算数能力。程序有 3 个类组成,
其中 Teacher 对象充当监视器,负责给出算术题目,并判断回答者的答案是否正确;ComputerFrame 对象负责为算数题目提供视图,比如用户可以通过ComputerFrame对象提供的 GUI界面看到题目,并通过该 GUI 界面给出题目的答
案; MainClass 是软件的主类。(请在下方空白处填写本程序的全部程序代码及
..
软件界面截图)
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class ComputerFrame extends JFrame{
JMenuBar menubar;
JMenu choiceGrade;
JMenuItem grade1,grade2;
JTextField textOne,textTwo,textResult;
JButton getProblem,giveAnwser;
JLabel operatorLabel,message;
Teacher teacherZhang;
ComputerFrame(){
teacherZhang = new Teacher();
teacherZhang.setMaxInteger(20);
setLayout(new FlowLayout());
menubar = new JMenuBar();
choiceGrade = new JMenu("选择级别");
grade1 = new JMenuItem("幼儿级别");
grade2 = new JMenuItem("儿童级别");
grade1.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){
teacherZhang.setMaxInteger(10);
}
});
grade2.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){
teacherZhang.setMaxInteger(50);
}
});
choiceGrade.add(grade1);
choiceGrade.add(grade2);
menubar.add(choiceGrade);
setJMenuBar(menubar);
textOne=new JTextField(5);
textTwo = new JTextField(5);
textResult = new JTextField(5);
operatorLabel = new JLabel("+");
operatorLabel.setFont(new Font("Arial",Font.BOLD,20)); message = new JLabel("你还没有回答呢"); getProblem= new JButton("获取题目"); giveAnwser = new JButton("确认答案");
add(getProblem);
add(textOne);
add(operatorLabel);
add(textTwo);
add(new JLabel("="));
add(textResult);
add(giveAnwser);
add(message);
textResult.requestFocus();
textOne.setEditable(false);
textTwo.setEditable(false);
getProblem.setActionCommand("getProblem"); textResult.setActionCommand("answer"); giveAnwser.setActionCommand("answer"); teacherZhang.setJTextField(textOne,textTwo,textResult); teacherZhang.setJLabel(operatorLabel,message); getProblem.addActionListener(teacherZhang); giveAnwser.addActionListener(teacherZhang);