JAVA计算器实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验:计算器java程序
班级:XXXXXXX 姓名:XXXXX
学号:XXXXXXXX 实验地点:XXXXX
一、实验目的:
通过制作一个计算器让我们了解到组件的运用以及如何制作一个窗口,怎么样使用各种布局管理器,怎么样注册事件的监听,以及怎么样设置按钮或者说组件的监听程序,学会使用java语言的语法规则,掌握接口的使用,了解组建的背景颜色的设置等方法。
二、实验要求:
1.编写一个java计算器程序;
2. 运用组件的方法来布局窗口,运用接口,事件监听程序来完成计算器的功能。
三,实验步骤
1、新建一个类,注册各种组件;
2、获取窗格;设置布局管理器;
3、为各个组件注册监听程序;
4、设置组件的事件监听程序;
5、运行程序,对结果进行截图;
四,设计思路:
1.界面设置布置模块:
使用了awt,swing的类里面的方法来完成界面的布置。其中,容器布置选择了BorderLayout方法来布置面板,选择了GirdLayout方法来布置按钮。
文本区域接收字符从数字按钮的监听中获得。按钮是常规思路添加到面板上。并为按钮注册监听。
2.监听程序思路:
使用tf.getText()+"n"来实现获得文本区域显示按钮字符串,n等于所设置监听的数字按钮。tf.setText()来保存并输出获得的字符串。
使用Double.parseDouble()实现文本区域字符串转换成Double 型数据来完成计算。把ft.setText()中的字符转换成数字。
使用biaozhi==n。的方法来获得启发值。完成运算符按钮的监听。构造方法,运用biaozhi=n,来完成加减乘除小数点的不同运算。
运算后获得结果flag3。ft.setText()获得值显示在文本区域上3.数字按钮输入使用循环会更加简单,减少了十个数字按钮的逐个输入,添加,注册监听
for (int i=0;i<=9;i++){
btn[i]=new Button(String.valueOf(i));
centerPanel.add(btn[i]);
btn[i].addActionListener();
}
五,程序实现:
package yyy;
import java.awt.BorderLayout;//导入边界布局管理器类
import java.awt.Button;
import java.awt.GridLayout;//导入网格布局管理器类
import java.awt.TextField;//导入文本区域类
import java.awt.event.ActionEvent;//导入事件类
import java.awt.event.ActionListener;//导入事件监听者类
import javax.swing.JButton;//导入按钮类
import javax.swing.JFrame;//导入窗体
import javax.swing.JPanel;//导入面板
public class jisuanqi8{
//新建对象,在构造函数中进行初始化
JFrame f;//新建窗体对象
JButton buttonzero,buttondot,buttonequal;//新建按钮“0”“.”“=”
JButton buttonplus,buttonminus,buttonmultiple,buttondevision, buttontozero;//新建按钮“+”“-”“*”“/”和归零按钮
JPanel panelwest,panelcenter,paneleast,centerPanel;//新建三个面板 TextField tf;//新建文本区域对象
private Button[] btn=new Button[15];
public jisuanqi8(){
//初始化对象
tf=new TextField(30);//构造空文本字段,字符宽度为30
f =new JFrame("简单计算器");//构造窗体对象,名称为“简单计算器”
panelcenter=new JPanel();//构造面板,放到窗体中央
panelwest=new JPanel();//构造面板,放到窗体西边
paneleast=new JPanel();//构造面板,放到窗体东边
Handle h=new Handle();//新建Handle类对象,Handle类为事件监听类
//构造按钮“0”“.”“=”,注册事件监听器,设置1行3列的布局,添加到到西边的面板
buttonzero=new JButton("0");
buttondot=new JButton(".");
buttonequal=new JButton("=");
buttonzero.addActionListener(h);
buttondot.addActionListener(h);
buttonequal.addActionListener(h);
panelwest.setLayout(new GridLayout(3,1));
panelwest.add(buttonzero);
panelwest.add(buttondot);
panelwest.add(buttonequal);
//构造操作按钮“+”“-”“*”“/”“sin”“>0”,其中“>0”为归零按钮
buttonplus=new JButton("+");
buttonminus=new JButton("-");
buttonmultiple=new JButton("*");
buttondevision=new JButton("/");
buttontozero=new JButton("归零");
paneleast.setLayout(new GridLayout(3,1));//设置西边的布局为3行1列
//将操作按钮“+”“-”“*”“/”“sin”“>0”添加到西边的面板中
paneleast.add(buttonplus);
paneleast.add(buttonminus);
paneleast.add(buttonmultiple);
paneleast.add(buttondevision);
paneleast.add(buttontozero);