好文档 - 专业文书写作范文服务资料分享网站

java实验报告(实验六)

天下 分享 时间: 加入收藏 我要投稿 点赞

北 京 林 业 大 学

2013 学年— 2014 学年第 2学期 Java程序设计基础实验

报告书

专 业: 电子 班 级: 11-2 姓 名: 王云飞 学 号: 101114110 实验地点: 计算机中心 任课教师: 黄儒乐 实验题目:图形用户界面编程

实验环境: Windows2000/XP;局域网 实验要求:

1. 对所有实验内容中涉及到的命令均要亲自实践,对照实验指导书进行。 2. 把实验中出现的问题以及最后解决的情况反馈到实验报告中。 3. 程序作业的源代码要求反馈到实验报告中。

实验内容:

设计一个考试分数分布统计程序,要求该程序: 1) 提供输入界面,可输入考生姓名和分数;

2) 单击输入按钮,在登记考生姓名和分数的同时,立即绘制当前人数的分数分布统计饼图

(分为优秀、良好、中等、不及格)精品文档收集整理汇总文档来源网络及个人整理,勿用作商业用途 3) 参考界面如下:

? 初始执行时,各个分数比例均匀分布。

1 / 7

? 然后逐个输入姓名和分数,点击输入后,左面显示姓名和分数,右面饼图同步更新。

实验目的:

掌握图形用户界面中常用类的使用。

实现方法、实验结果及结论分析等:

实验源代码:

import java.awt.event.*; import java.awt.*; import javax.swing.*;

2 / 7

public class Score extends JFrame{

JPanel inputPanel=new JPanel();

ShanXingTu figure =new ShanXingTu(); JLabel labelName=new JLabel(\姓名:\ JLabel labelScore=new JLabel(\分数:\

JLabel labelRed = new JLabel(\不及格(60以下)\ JLabel labelYellow = new JLabel(\优秀(100-90)\ JLabel labelGreen = new JLabel(\良好(89-75)\ JLabel labelBlue = new JLabel(\中等(74-60)\ JTextField inputName=new JTextField(10); JTextField inputScore=new JTextField(10); JTextArea textArea=new JTextArea(20,16); JButton inputButton=new JButton(\输入\

JScrollPane scrollPane = new JScrollPane(textArea);精品文档收集整理汇总文档来源网络及个人整理,勿用作商业用途 int excellent = 0,good = 0,pass = 0,fail = 0;

public Score(){

setSize(400,300); setTitle(\分数统计\

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLocationRelativeTo(null); setVisible(true);

inputPanel.add(labelName); inputPanel.add(inputName); inputPanel.add(labelScore); inputPanel.add(inputScore); inputPanel.add(inputButton);

inputButton.addActionListener(new ActionListener(){精品文档收集整理汇总文档来源网络及个人整理,勿用作商业用途 public void actionPerformed(ActionEvent event){

inputData(inputName.getText(),Double.parseDouble(inputScore.getText()));精品文档收集整理汇总文档来源网络及个人整理,勿用作商业用途 } });

labelYellow.setForeground(Color.YELLOW); labelGreen.setForeground(Color.GREEN); labelBlue.setForeground(Color.BLUE); labelRed.setForeground(Color.RED); figure.add(labelYellow); figure.add(labelGreen); figure.add(labelBlue);

3 / 7

figure.add(labelRed);

figure.setBackground(Color.GRAY); add(inputPanel,\ add(scrollPane,\ add(figure,\

textArea.append(\姓名\\t分数\\n\ }

void inputData(String name,double score){

textArea.append(name+\ \ if(score>=90){ excellent++; }

else if(score>=75){ good++; }

else if(score>=60){ pass++; } else{

fail++; }

int sum = excellent + good + pass + fail; figure.a=360 * excellent / sum; figure.b=360 * good / sum; figure.c=360 * pass / sum; figure.d=360 * fail / sum; figure.repaint(); }

public static void main(String args[]){ JFrame score = new Score(); } }

class ShanXingTu extends JPanel{

public void paintComponent(Graphics g){ super.paintComponent(g);

4 / 7

g.setColor(Color.YELLOW); g.fillArc (x,y,len,len,0,a); g.setColor(Color.GREEN); g.fillArc(x,y,len,len,a,b); g.setColor(Color.BLUE); g.fillArc(x,y,len,len,a + b,c); g.setColor(Color.RED);

g.fillArc(x,y,len,len,a + b + c,d); }

int a=90,b=90,c=90,d=90;int x=20;int y=50;int len=160;精品文档收集整理汇总文档来源网络及个人整理,勿用作商业用途 }

实验结果:

5 / 7

java实验报告(实验六)

北京林业大学2013学年—2014学年第2学期Java程序设计基础实验报告书专业:电子班级:11-2姓名:王云飞学号:101114110实验地点:计算机中心任课教师:黄儒乐
推荐度:
点击下载文档文档为doc格式
66on04pmrl8xzko02xoc4ddq3430ci00y9a
领取福利

微信扫码领取福利

微信扫码分享