




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
XX实验报告学号: 年 月 日系别专业班级姓名课程名称 学时数实验名称JAVA基本程序设计结构实验目的和要求:使用JApplet实现某一门课程的分数录入系统,界面包括学号、姓名、班级、班号、成绩的输入域和一个录入按扭。 (1) 当用户单击录入按扭时,程序检查各输入域中是否有非空的数据,若有空域则抛出一个Exception对象;同时程序检查成绩输入域,如果不是数值信息,或是负的数值信息,也抛出相应的异常。在抛出异常之前应提供详细的信息说明,从而使使用该程序的用户了解所出现的问题,同时考虑上述异常出现时程序应该如何处理。 (2) 练习并掌握Eclipse编程环境下的断点设置、单步跟踪和变量检查等各种调试技巧。 程序源代码:package jappletcoursescore;public class Student /定义各变量 private String number; /学号 private String name; /姓名 private String sex; /性别 private String banji; /班级 private String grade; /班号 private String course; /课程 private String score; /成绩 public Student(String number,String name,String sex,String banji,String grade,String course,String score) this.number=number; =name; this.sex=sex; this.banji=banji; this.grade=grade; this.course=course; this.score=score; /封装number变量 public void setNumber(String number) this.number=number; public String getNumber() return number; /封装name变量 public void setName(String name) =name; public String getName() return name; /封装sex变量 public void setSex(String sex) this.sex=sex; public String getSex() return sex; /封装banji变量 public void setBanji(String banji) this.banji=banji; public String getBanji() return banji; /封装grade变量 public void setGrade(String grade) this.grade=grade; public String getGrade() return grade; /封装course变量 public void setCourse(String course) this.course=course; public String getCourse() return course; /封装score变量 public void setScore(String score) this.score=score; public String getScore() return score; package jappletcoursescore;import java.awt.*;import java.awt.event.*;import javax.swing.*; public class ScoreManageTest extends JApplet implements ActionListener/实现ActionListener接口ScoreInsert scoreinsert=null; /定义类对象并附初值空 JMenuBar bar; JMenu menu; JMenuItem insert,pos; Container con=null; CardLayout card=null; JLabel label; /标签类极其对象 JPanel panel; public ScoreManageTest() insert=new JMenuItem(录入某一门课程的分数); /各对象初始化附新值 pos = new JMenuItem(查询已经输入的成绩表); bar=new JMenuBar(); menu=new JMenu(选项); menu.add(insert); /添加以下选象到 fileMenu对象 menu.add(pos); bar.add(menu); setJMenuBar(bar); label=new JLabel(欢迎使用某一门课程的分数录入系统,JLabel.CENTER); /为label对象附值并进行字体、字型、前景色等设置 label.setFont(new Font(TimesRoman,Font.BOLD,28); /加粗 label.setForeground(Color.green); insert.addActionListener(this);/给各对象添加监听器 card=new CardLayout(); /初始对象 con=getContentPane(); /取得组件添加到容器 scoreinsert=new ScoreInsert();/初始化以下各对象 panel=new JPanel(); panel.setLayout(card); /panel面板添加到card布局管理器上 panel.add(欢迎语界面,label);/将以下信息添加到panel面板 panel.add(录入界面,scoreinsert); add(panel,BorderLayout.CENTER);/将面板放入容器中央并使用新的布局管理器 validate(); /强迫容器根据新的布局管理器重新摆放组建 public void actionPerformed(ActionEvent e)/定义actionPerformed方法,响应以下ActionEvent事件 if(e.getSource()=insert) /处理“录入”事件 card.show(panel,录入界面); public void init() EventQueue.invokeLater(new Runnable() public void run() new ScoreManageTest();/实例化该对象 ); package jappletcoursescore;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.util.*;import jappletcoursescore.ScoreManageTest.*;import jappletcoursescore.Student.*;public class ScoreInsert extends JPanel implements ActionListener /继承JPanel类,实现ActionListener接口 JTextField 学号,姓名,班级,班号,课程,成绩; JRadioButton 男,女; ButtonGroup group=null; JButton 录入,重置; JTextArea textArea=new JTextArea(20,40); public ScoreInsert() 学号=new JTextField(20); 姓名=new JTextField(20); 班级=new JTextField(20); 班号=new JTextField(20); 课程=new JTextField(20); 成绩=new JTextField(20); group=new ButtonGroup(); 男=new JRadioButton(男,true); 女=new JRadioButton(女,false); group.add(男); /将按钮加到group group.add(女); 录入=new JButton(录入); 重置=new JButton(重置); 录入.addActionListener(this);/给各对象添加监听器 重置.addActionListener(this); Box box1=Box.createHorizontalBox();/水平对齐各项 box1.add(new JLabel(请输入学号: ,JLabel.CENTER); box1.add(学号); Box box2=Box.createHorizontalBox(); box2.add(new JLabel(请输入姓名: ,JLabel.CENTER); box2.add(姓名); Box box3=Box.createHorizontalBox(); box3.add(new JLabel(性别: ,JLabel.CENTER); box3.add(男); box3.add(女); Box box4=Box.createHorizontalBox(); box4.add(new JLabel(请输入班级: ,JLabel.CENTER); box4.add(班级); Box box5=Box.createHorizontalBox(); box5.add(new JLabel(请输入班号: ,JLabel.CENTER); box5.add(班号); Box box6=Box.createHorizontalBox(); box6.add(new JLabel(请输入课程名:,JLabel.CENTER); box6.add(课程); Box box7=Box.createHorizontalBox(); box7.add(new JLabel(请输入成绩: ,JLabel.CENTER); box7.add(成绩); Box box8=Box.createHorizontalBox(); box8.add(textArea); Box boxH=Box.createVerticalBox();/垂直对齐以下各项 boxH.add(box1); boxH.add(box2); boxH.add(box3); boxH.add(box4); boxH.add(box5); boxH.add(box6); boxH.add(box7); boxH.add(box8); boxH.add(Box.createVerticalGlue(); JPanel pCenter=new JPanel(); pCenter.add(boxH); setLayout(new BorderLayout(); add(pCenter,BorderLayout.CENTER);/将面板放入容器中央并使用新的布局管理器 JPanel pSouth=new JPanel(); pSouth.add(录入);/添加两个按纽到面板 pSouth.add(重置); add(pSouth,BorderLayout.NORTH); validate(); /强迫容器根据新的布局管理器重新摆放组建 public void actionPerformed(ActionEvent e) if(e.getSource()=录入) String number=学号.getText();/定义一个number字符串,获得输入学号的内容 if(number.length()0) /输入学号后,将输入Text中的内容赋值给下列变量 String name=姓名.getText(); if(name.length()0) String banji=班级.getText(); if(banji.length()0) String grade=班号.getText(); if(grade.length()0) String course=课程.getText(); if(course.length()0) String score=成绩.getText(); if(score.length()0) String sex=null; textArea.append(学号:+学号.getText()+n); textArea.append(姓名:+姓名.getText()+n); if(男.isSelected()/选择性别 textArea.append(性别:+男.getText()+n); else textArea.append(性别:+女.getText()+n); textArea.append(班级:+班级.getText()+n); textArea.append(班号:+班号.getText()+n); textArea.append(课程:+课程.getText()+n); textArea.append(成绩:+成绩.getText()+n); textArea.append(n); JOptionPane.showMessageDialog(null,录入成功);/提示录入成功 else String warning=请输入成绩!; JOptionPane.showMessageDialog(this,warning,警告,JOptionPane.WARNING_MESSAGE); else String warning=请输入课程名!; JOptionPane.showMessageDialog(this,warning,警告,JOptionPane.WARNING_MESSAGE); else String warning=请输入班号!; JOpt
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 数字化制造对传统棉布生产工艺的重构效应
- 微胶囊缓释技术对金属火灾二次污染抑制的分子机理探索
- 汽车产业园人才引进与培养方案
- 微流控合成技术对活性酯分子异构体纯度提升的瓶颈突破路径
- 微型化刹车线管在新能源汽车集成中的结构应力优化难题
- 建筑工地场景下多频段光信号穿透混凝土的衰减模型构建
- 废料化学再生技术对分体式浸塑机环保合规性的重构路径
- 英语课后练习Unit 2 lesson 2
- 工业级交联PVP回收再利用中的热降解副产物定向捕获技术
- 渔光一体项目管理人员能力提升方案
- 《车辆产品公告技术审查规范性要求汽车部分版》
- 现代诗二首-花牛歌 公开课一等奖创新教学设计
- 2024年安徽省地勘行业职业技能大赛(地质调查员)考试题库(含答案)
- 2024年第九届中小学“学宪法、讲宪法”活动知识素养竞赛题库
- 《工程招投标与合同管理》全套教学课件
- DL∕T 5342-2018 110kV~750kV架空输电线路铁塔组立施工工艺导则
- 海南公司防止电力事故二十五项反事故措施题库
- CJJ28-2014城镇供热管网工程施工及验收规范
- 专题十八 椭圆解答题-2022届天津市各区高三一模数学试题分类汇编
- 红酒市场调研报告
- 2023年4月自考02207电气传动与可编程控制器PLC试题及答案含解析
评论
0/150
提交评论