课程实验报告
课程名称 | 面向对象 程序设计 | 班级 | 计算131 | 实验日期 | 2016.05.21 |
姓名 | 周超 | 学号 | 201307031 | 实验成绩 |
|
实验名称 | 实验五 图形用户界面设计 | ||||
实 验 目 的 及 要 求 |
实验目的: 1、熟悉和掌握Java Swing的基本GUI程序设计,掌握如何构建一个窗口程序,并且窗口中添加常用的Swing组件,使用各种布局管理器来完成对窗口中的组件进行布局。 2、了解Java事件处理机制,掌握基本的事件处理机制的基本程序编写。 实验要求: 1、使用Java语言完成相关程序设计要求。 2、编写代码、调试、运行,记录程序调试中出现的问题和解决方法。 3、实验后必须按照要求独立完成实验报告。
| ||||
实 验 环 境 |
硬件环境:Windos7系统 软件环境:eclipse | ||||
实 验 内 容 |
1.用Swing组件构建一个程序界面
2.使用Swing组件及Java事件处理机制完成一个简单计算器的图形界面及实现加减程序计算功能。
| ||||
算 法 描 述 及 实 验 步 骤
| 第一个实验: 1.创建一个继承自JFrame类的子类GUI,GUI类中包含一个构造方法GUI()用于实现GUI用户界面的设计,主要设计添加组件跟组件布局两个方面。 2.创建一个窗体: this.setTitle("用户注册");//创建一个标题为用户注册的窗体 this.setSize(340,450);//该窗体大小 this.setLayout(new GridLayout(8,1));//该窗体中的面板的排列方式 this.setVisible(true); //显示窗体 该窗体用于安放各面板,面板包含各组件 3.添加各组件: a.创建8个面板JPanel对像以8*1的网格布局于窗体中。 b.给每个面板添加组件: 第一个:添加文本编辑框JTextField对象,设置长度和标签对象Label 第二个:添加文本编辑框JTextField对象,设置长度和标签对象Label 第三个:添加文本编辑框JTextField对象,设置长度和标签对象Label 第四个:添加单选框按钮JRadioButton对象(参数为按钮名)添加标签Label 第五个:添加复选框按钮JCheckBox(参数为按钮名)添加标签Label 第六个:添加一个文本域JTextArea对象,添加标签Label 第七个:创建一个下拉列表框JComboBox对象,添加面板标签并用对象 comboBox调用addItem方法添加五个下拉列表 第八个:添加两个按钮,设置按钮名 第二个实验: 1.用户界面设计: (1)创建窗体:设置窗体名,布局以及窗体中组件布局管理 (2)创建两个面板一个放文本编辑框和清零按钮,文本框用于显示输入的数和运算结果,清零按钮用于多次计算,一个按网格4*4布局放数字按钮,算符按钮和小数点按钮(添加各组件的方法前一个实验已经说明,不再赘述) 2.功能实现: 数字按钮与小数点按钮:
添加一个监听事件,当点击按钮,调用setText()方法将getText() 方法得到的此时编辑框显示的内容以及点击的该按钮所代表的内容显示在编辑框,实现要运算的数据的显示 算符按钮: 包括加减乘除
添加一个监听事件,当点击按钮,通过list.add(inputField.getText())将点击该算符按钮之前编辑框所显示的内容存入集合list,通过lists.add()将点击的按钮代表的算符存入集合lists,cout++记录点击算符的次数,用于作为list集合中每个元素的下标 等于按钮:
先将点击该按钮前在编辑框显示的内容存入list集合,也就是算符的后一个数,然后将调用Operator(String str)方法返回的内容显示在编辑框,其中str的值为先前保存在lists中算符 清零按钮:
Operator(String str)方法: 该方法通过switch语句选择运算,其中参数str为所要进行的运算,通过Double a = Double.parseDouble(list.get(2*cout-2))获得点击一个算符时编辑框显示的前后两个内容并由String转化为Double类型,也就是该算符运算的前后两个数,然后进行运算,通过String res = String.valueOf(result)返回String类型的一个结果 | ||||
调 试 过 程 及 实 验 结 果
| 1. 2.
实现25.13+20.7=35.83并清零进行下一次运算的过程
在清零后实现(12.3-25.7)*3/5=-8.04多项式运算的过程
| ||||
总
结
| 1.我发现个很重要的问题,程序没编出来之前感觉各种不知道,编出来之后感觉也就那么回事,真的要把编程中所有遇到的问题写出来不知道能写多少,但如果只要把程序说清楚又觉得这么简单的程序没什么好说的。 2.GUI图形界面的实现要牢记这样一个过程: 创建面板对象,创建按钮,文本编辑框,单选框,复选框,下拉菜单等等组件的对象,面板对象调用add方法将组件放入面板中,创建Label标签对象,面板或组件调用add方法添加标签对象作为名称。 3.最好在各组件,面板添加完毕后再创建窗体,不然有时编译运行后有些组件不显示出来。 4.String数据类型与各数据类型之间的互相转化对GUI设计很有帮助 5.此次实验其实还可以有很大的改进,如对按钮点击时如果不符合运算规则的操作将会运行错误,而不是报错之后让用户有改错的机会
| ||||
附 录
| 1.
|