1、Java基础实验报告图形用户界面设计南京工程学院实 验 报 告课程名称 JAVA基础 实验项目名称 图形用户界面设计 实验学生班级 实验学生姓名 学号 同组学生姓名 实验时间 实验地点 实验成绩评定 指导教师签字 年 月 日1、实验目的和要求 1.掌握Java Swing组建的使用方法,包括窗口、框架、对话框、面板、文本编辑框、按钮、组合框等多种布局方式,掌握窗口菜单和快捷菜单设计方式。2.理解委托时间处理模型,掌握不同组件、不同事件的事件处理方法,设计出能够响应事件的Java图形用户界面。3.熟悉在组件上绘图的方法。二、实验题目 用表格存储并显示个人所得税税率表,给定一个月收入值,计算应缴的
2、个人所得税。3、实验方法与步骤(需求分析、算法设计思路、流程图等)算法设计思路:本次实验题目为计算个人所得税,所以本人从网上找到了国家最新的税收政策,以下为截图:因此,我设计了以下核心算法 public void actionPerformed(ActionEvent e) if(e.getSource()=button_b) double wage=Double.parseDouble(String)text_wage.getText(); double tax = 0; if(wage3500&wage5000&wage8000&wage12500&wage38500&wage58500&
3、wage83500) tax=(wage-3500)*0.45-13505; text.setText(+tax); 以上算法是根据税率表设计的,具体为: 我国规定个人收入在3500元起征个人所得税,分了多个阶段:3500以下:不收税3500以上到5000以下部分:3%5000以上到8000以下部分:10%8000以上到以下部分:20% 125000以上到385000以下部分:25%385000以上到585000以下部分:30%585000以上到835000以下部分:35%83500以上:45%首先算出每个阶段的速扣数,然后用此公式:应纳个人所得税税额=(应纳税所得-扣除标准)适用税率-速算扣
4、除数。然后就得出以上算法。四、实验原始纪录(源程序、数据结构等)import java.awt.*;import java.awt.event.*;import javax.swing.*;public class WageJFrame extends JFrame implements ActionListener private JTable table;/表格 private Button button_b;/按钮 private Object datas;/数据 String titles;/标题(为空) private JTextField text;/个人所得税 private J
5、TextField text_wage;/输入的工资 public WageJFrame() super(计算个人所得税); Dimension dim=getToolkit().getScreenSize();/获得屏幕分辨率 this.setBounds(dim.width/4,dim.height/4,dim.width/2,dim.height/2);/设置窗口大小 this.setDefaultCloseOperation(EXIT_ON_CLOSE);/关闭窗口 this.datas=new Object84;/设置表格长宽 JLabel label=new JLabel(工资);
6、/“工资”标签 text_wage=new JTextField(5000,7);/默认工资 JPanel jpane1=new JPanel();/面板 jpane1.add(label);/把标签加入面板中 jpane1.add(text_wage);/把输入工资的文本框加入面板中 this.getContentPane().add(jpane1,North);/把上述面板插入主面板中 for(int i=0;i=7;i+) datasi0=i+1+; titles=new String4;/设置标题 titles0=级数; titles1=含级数距; titles2=税率; titles
7、3=速扣数; datas01=不超过3500元; datas11=超过3500,不超过5000元; datas21=超过5000,不超过8000元; datas31=超过8000,不超过12500元; datas41=超过12500,不超过38500元; datas51=超过38500,不超过58500元; datas61=超过58500,不超过83500元; datas71=超过83500; datas02=0%; datas12=3%; datas22=10%; datas32=20%; datas42=25%; datas52=30%; datas62=35%; datas72=45%;
8、 datas03=0; datas13=0; datas23=105; datas33=555; datas43=1005; datas53=2755; datas63=5505; datas73=13505; table=new JTable(datas,titles);/创建一个表格 this.getContentPane().add(new JScrollPane(table),Center); button_b=new Button(计算个人所得税); button_b.addActionListener(this);/单击按钮响应事件 JLabel label1=new JLabel
9、(个人所得税);/创建个人所得税标签 text=new JTextField( ,7);/设置输出框 text.setEditable(false);/输出文本框不可编辑 JPanel jpane2=new JPanel();/创建一个面板 jpane2.add(button_b);/把按钮加到面板中 jpane2.add(label1);/把标签加入面板中(个人所得税) jpane2.add(text);/把输出文本框加入面板 this.getContentPane().add(jpane2,South);/把面板2加入主面板 this.setVisible(true);/显示界面 publ
10、ic void actionPerformed(ActionEvent e)/响应单击事件 if(e.getSource()=button_b) double wage=Double.parseDouble(String)text_wage.getText(); double tax = 0; if(wage3500&wage5000&wage8000&wage12500&wage38500&wage59500&wage83500) tax=(wage-3500)*0.45-13505; text.setText(+tax); public static void main(String ar
11、gs) new WageJFrame();/创建一个WageJFrame对象 5、实验结果及分析(计算过程与结果、数据曲线、图表等)1初始界面2 工资为3500时的个人所得税3工资为28850时的个人所得税4工资为85000时的个人所得税6、实验总结与思考 通过这次JAVA实验,我清晰地感受到了JAVA语言的魅力,作为现在使用很广的一种编程语言,的确有其补课替代的作用。从这次实验上看,我对JAVA变成有我资深的只是局限性,毕竟这么厚一本书,在这么点时间内还是很难读透搞懂的,真正等到自己亲自去实验时,却发现问题多多,有的人写代码程序,实现一个功能用了几十行,而有的人却用简短几行就能搞定,开始让我觉得不可思议,但后面慢慢的编程中,我真四体会到了,所以我觉得这方面很重要。 我觉得JAVA对未来走向社会很重要,而这个大作业的编写,正好锻炼了我对JAVA的编程能力。对JAVA有了更深的认识,知识不是瞬间获得的,是靠平时一点一滴的积累和吸收每次的经验得来的。教师评语:
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1