当前位置:文档之家› java图形化界面实现简单计算器

java图形化界面实现简单计算器

java图形化界面实现简单计算器
java图形化界面实现简单计算器

学号11710115

天津城建大学

Java 语言程序设计C

实验报告

实验5:计算器

学生姓名路江飞

班级11卓越7班

一、实验目的

1.掌握Java图形组件和布局管理器的使用;

2.掌握使用Java事件处理机制的使用;

3.掌握图形界面的各种控件的使用,如:标签、文本框、按钮、复选框、列表框、窗框等。

二、实验要求

1.采用布局管理器进行界面的布局;

2.学会对不同的事件用相应的事件处理器;

3.写出实验报告。要求记录编译和执行Java程序当中的系统错误信息提材示,并给出解决办法。

三、实验内容

1.在随堂练习的简单计算器基础上设计一个多功能计算器。包括复杂的功能:比如记忆功能,三角函数,成方,对数等等。

五、实验结果

文件1:

package computer;

import java.awt.BorderLayout;

public class Compuer extends JFrame {

private JPanel contentPane;

private JTextField textField;

private JTextField textField_1;

private JTextField textField_2;

private JTextField textField_3;

/**

* Launch the application.

*/

public static void main(String[] args) {

EventQueue.invokeLater(new Runnable() {

public void run() {

//运行程序时,点击按钮输入公式,当点击等于号时显示出计算结果try {

Compuer frame = new Compuer();

frame.setVisible(true);

Time time=new Time();

time.setTime(frame.textField_3);

Thread thread=new Thread(time);

thread.start();

}

catch (Exception e) {

e.printStackTrace();

}

}

});

}

/**

* Create the frame.

*/

public Compuer() {

setTitle("\u8BA1\u7B97\u5668");

setName("");

final StringBuffer s=new StringBuffer();

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setBounds(100, 100, 412, 448);

contentPane = new JPanel();

contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));

setContentPane(contentPane);

contentPane.setLayout(null);

textField = new JTextField();

textField.setEnabled(false);

textField.setLocale(https://www.doczj.com/doc/1e14780914.html,);

textField.setForeground(Color.PINK);

textField.setText(" \u6B22\u8FCE\u4F7F\u7528\u8BA1\u7B97\u5668");

textField.setBounds(10, 20, 368, 30);

contentPane.add(textField);

textField.setColumns(10);

textField_1 = new JTextField();//文本框textField_1,显示公式

textField_1.setBounds(10, 102, 368, 30);

contentPane.add(textField_1);

textField_1.setColumns(10);

textField_2= new JTextField();//文本框textField_2.显示计算结果

textField_2.setBounds(10, 142, 368, 30);

contentPane.add(textField_2);

textField_2.setColumns(10);

textField_3 = new JTextField();//文本框textField_3,显示电子表textField_3.setForeground(new Color(205, 133, 63)); textField_3.setBounds(10, 60, 368, 30);

contentPane.add(textField_3);

textField_3.setColumns(10);

//按钮'清零',监听到按钮后清零

JButton btnC = new JButton("\u6E05\u96F6");

btnC.setForeground(Color.RED);

btnC.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

textField_1.setText("");

textField_2.setText("");

s.delete(0, s.length());

}

});

btnC.setBounds(10, 182, 183, 44);

contentPane.add(btnC);

//按钮'退格',监听到按钮后退格

JButton button_16 = new JButton("\u9000\u683C");

button_16.setForeground(Color.RED);

button_16.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {

s.delete(s.length()-1, s.length());

String str=s.toString();

textField_1.setText(str);

}

});

button_16.setBounds(193, 182, 185, 44);

contentPane.add(button_16);

//按钮'*',监听到按钮后显示*

JButton button_1 = new JButton("*");

button_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {

s.append('*');

String str=s.toString();

textField_1.setText(str);

}

});

button_1.setBounds(285, 271, 93, 44);

contentPane.add(button_1);

//按钮'6',监听到按钮后显示6

JButton button_2 = new JButton("6");

button_2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {

String str=s.toString();

textField_1.setText(str);

}

});

button_2.setBounds(193, 271, 93, 44); contentPane.add(button_2);

//按钮'5',监听到按钮后显示5

JButton button_3 = new JButton("5");

button_3.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { s.append('5');

String str=s.toString();

textField_1.setText(str);

}

});

button_3.setBounds(100, 271, 93, 44); contentPane.add(button_3);

//按钮'4',监听到按钮后显示4

JButton button_4 = new JButton("4");

button_4.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { s.append('4');

String str=s.toString();

textField_1.setText(str);

}

});

button_4.setBounds(10, 271, 93, 44);

contentPane.add(button_4);

//按钮'-',监听到按钮后显示-

JButton button_5 = new JButton("-");

button_5.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { s.append('-');

String str=s.toString();

textField_1.setText(str);

}

});

button_5.setBounds(285, 313, 93, 44); contentPane.add(button_5);

//按钮'3',监听到按钮后显示3

JButton button_6 = new JButton("3");

button_6.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {

String str=s.toString();

textField_1.setText(str);

}

});

button_6.setBounds(193, 313, 93, 44);

contentPane.add(button_6);

//按钮'2',监听到按钮后显示2

JButton button_7 = new JButton("2");

button_7.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {

s.append('2');

String str=s.toString();

textField_1.setText(str);

}

});

button_7.setBounds(100, 313, 93, 44);

contentPane.add(button_7);

//按钮'1',监听到按钮后显示1

JButton button_8 = new JButton("1");

button_8.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {

s.append('1');

String str=s.toString();

textField_1.setText(str);

}

});

button_8.setBounds(10, 313, 93, 44);

contentPane.add(button_8);

//按钮'+',监听到按钮后显示+

JButton button_9 = new JButton("+");

button_9.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {

s.append('+');

String str=s.toString();

textField_1.setText(str);

}

});

button_9.setBounds(285, 355, 93, 44);

contentPane.add(button_9);

//按钮'=',点击按钮'=',将计算出结果

**********************************

JButton button_10 = new JButton("=");

button_10.setForeground(Color.RED);

button_10.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) { String str=s.toString();

String ss=str;

String index="[-]|[+]|[/]|[*]";

String number[]=str.split(index);

int count=number.length;

double num[]=new double[count];

for(int i=0;i

num[i]=Double.parseDouble(number[i]);

}

double result=0;

if(ss.contains("+")){

result=num[0];

for(int i=1;i

result+=num[i];

}

}

if(ss.contains("-")){

result=num[0];

for(int i=1;i

result-=num[i];

}

}

if(ss.contains("*")){

result=num[0];

for(int i=1;i

result*=num[i];

}

}

if(ss.contains("/")){

result=num[0];

for(int i=1;i

if(num[i]==0){//除数等于0时,显示错误信息

textField_2.setText("出错");

return;

}

else {

result/=num[i];

}

}

}

//int i=(int)Math.round(result*100);

//result=(double)i/100;

textField_2.setText(""+result);

}

});

button_10.setBounds(193, 355, 93, 44); contentPane.add(button_10);

//按钮'.',监听到按钮后显示。.

JButton button_11 = new JButton(".");

button_11.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { s.append('.');

String str=s.toString();

textField_1.setText(str);

}

});

button_11.setBounds(10, 355, 93, 44);

contentPane.add(button_11);

//按钮'0',监听到按钮后显示0

JButton button_12 = new JButton("0");

button_12.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { s.append('0');

String str=s.toString();

textField_1.setText(str);

}

});

button_12.setBounds(100, 355, 93, 44); contentPane.add(button_12);

//按钮'/',监听到按钮后显示/

JButton button = new JButton("/");

button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { s.append('/');

String str=s.toString();

textField_1.setText(str);

}

});

button.setBounds(285, 227, 93, 44);

contentPane.add(button);

//按钮'9',监听到按钮后显示9

JButton button_13 = new JButton("9");

button_13.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {

s.append('9');

String str=s.toString();

textField_1.setText(str);

}

});

button_13.setBounds(193, 227, 93, 44);

contentPane.add(button_13);

//按钮'8',监听到按钮后显示8

JButton button_14 = new JButton("8");

button_14.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {

s.append('8');

String str=s.toString();

textField_1.setText(str);

}

});

button_14.setBounds(100, 227, 93, 44);

contentPane.add(button_14);

//按钮'7',监听到按钮后显示7

JButton button_15 = new JButton("7");

button_15.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {

s.append('7');

String str=s.toString();

textField_1.setText(str);

}

});

button_15.setBounds(10, 227, 93, 44);

contentPane.add(button_15);

}

}

文件2:

import java.util.Date;

import javax.swing.JTextField;

public class Time implements Runnable{

JTextField text;

public void setTime(JTextField text){

this.text=text;

}

@Override

public void run() {

// TODO Auto-generated method stub

try{

while(true){

Date data=new Date();

String s=data.toString();

text.setText(s);

Thread.sleep(1000);

}

}

catch(InterruptedException e){

}

}

}

运行结果:

加法:

减法:

乘法:

除法(有意义):

除法(无意义):

简单计算器JAVA

浙江科技学院 经济管理学院 JAVA语言课程设计报告 选题名称简单计算器 学生学号 专业班级信管101 学生姓名 学生成绩 指导教师朱军 工作时间2013-7-5

目录 第一章选题简介 第二章需求分析 1.系统要实现的目标分析 2.对输入输出数据及流程的分析 3.开发环境及运行环境分析 第三章系统设计 1.系统功能模块设计 2.类设计 3.数据库的设计(如果有) 4.界面设计 第四章测试 1.测试用例及结果 2.程序功能的评价 第五章总结 1.遇到的问题及解决的方法 2.开发体会及自评成绩 参考文献 第一章选题简介:简单计算器

第二章需求分析 1.系统要实现的目标分析:设计一个简单计算器,点击按钮中的数字键和运算符键就能进行简单的加、乘、乘、除求模四则运算;如果输入有误时可以按Clear撤销后重新输入新数据。 2.对输入输出数据及流程的分析:输入的符号有JiSuanQi、File、Edit、Help、on、off、close、copy、0、1、2、3、4、5、6、7、8、9、+、-、*、/、=、Backspace、CE、C,中文意思依次是计算器、文件夹、项目、帮助、开、关、复制、0、1、2、3、4、5、6、7、8、9、加、减、乘、除、等于、退格; 3.开发环境及运行环境分析:Microsoft Windows2000、jdk1.7.0_25、JCreator Pro; 第三章系统设计 1.系统功能模块设计:加、减、乘、除运算;“等于”符号;复位; 2.类设计:public void disp() 创建无值函数disp(),用来存放界面所需要展示的元素,包 括有面板,按钮,弹出对话框,显示框等。 public void actionPerformed(ActionEvent e) 创建无值函数actionPerformed(ActionEvent e),其允许的输入 值类型为ActionEvent e,在里面编写的是加减乘除等一些算 法。 public void setSum() 创建无值函数setSum(),显示出经过算法计算出的结果, public void windowClosing(WindowEvent e)

JAVA实现计算器课程设计

JAVA实现计算器课程设计 计算机科学系 计应0701班 指导老师:刘其昌 设计人员:陈秀桃 设计日期:2009年11月10日——2009年12月20日 计算器的设计 目录 第一章绪 论 ..................................................................... .. (2)

1.1 开发环 境 ..................................................................... . (2) 1.2 基本功能介 绍 ..................................................................... ......... 2 第二章系统设 计 ..................................................................... (3) 2.1 系统流程 图 ..................................................................... . (3) 2.2 系统功能框 图 ..................................................................... (3) 2.3 需求分 析 ..................................................................... ................ 4 第三章软件设 计 ..................................................................... (5) 3.1 界面设 计 ..................................................................... . (5) 3.2 代码设 计 .....................................................................

java编写的简单的计算器程序

计算器 项目内容:编写一个Applet,模仿windows附件所带计算器的功能,可以帮助用户完成计算功能,具体如下图所示。 项目要求:使用图形的方式借助窗口、菜单、按钮等标准界面元素和鼠标操作,来帮助用户方便地向计算机系统发出命令,启动操作,并将系统运行的结果同样以图形的方式显示给用户,这样更加直观和生动; 1.Applet容器中组件的添加与设置,包括面板以及菜单的使用; 2.容器中组件的布局管理; 3.Java核心包中数组、数学计算类的使用; 4.异常的处理; 5.事件处理模型中的三类对象的使用: 1.Event-事件,用户对界面操作在java语言上的描述,以类的形式出现,例如键盘操作对应的事件类是KeyEvent。 2.Event Source-事件源,事件发生的场所,通常就是各个组件,例如按钮Button。 3.Event handler-事件处理者,接收事件对象并对其进行处理的对象。 6.程序中事件处理的流程:

1.计算流程的细化 参考代码: import .*;

import .*; import .*; import import import public class Calculator implements ActionListener { #############"); dd(panel); panel1 = new JPanel(); panel2 = new JPanel(); (new BorderLayout()); 键入计算的第一个数字。\n"); ("2. 单击“+”执行加、“-”执行减、“*”执行乘或“/”执行除。\n"); ("3. 键入计算的下一个数字。\n"); ("4. 输入所有剩余的运算符和数字。\n"); ("5. 单击“=”。\n"); aboutCal = new JMenuItem(" 关于计算器(A)"); (this);

java图形化界面实现简单计算器

学号 天津城建大学 Java 语言程序设计C 实验报告 实验5:计算器 学生姓名路江飞 班级11卓越7班 一、实验目的 1.掌握Java图形组件与布局管理器的使用; 2.掌握使用Java事件处理机制的使用; 3.掌握图形界面的各种控件的使用,如:标签、文本框、按钮、复选框、列表框、窗框等。 二、实验要求 1.采用布局管理器进行界面的布局; 2.学会对不同的事件用相应的事件处理器; 3.写出实验报告。要求记录编译与执行Java程序当中的系统错误信息提材示,并给出解决办法。 三、实验内容 1.在随堂练习的简单计算器基础上设计一个多功能计算器。包括复杂的功能:比如记忆功能,三角函数,成方,对数等等。 五、实验结果 文件1: package computer; import java、awt、BorderLayout; public class Compuer extends JFrame { private JPanel contentPane; private JTextField textField; private JTextField textField_1;

private JTextField textField_2; private JTextField textField_3; /** * Launch the application、 */ public static void main(String[] args) { EventQueue、invokeLater(new Runnable() { public void run() { //运行程序时,点击按钮输入公式,当点击等于号时显示出计算结果 try { Compuer frame = new Compuer(); frame、setVisible(true); Time time=new Time(); time、setTime(frame、textField_3); Thread thread=new Thread(time); thread、start(); } catch (Exception e) { e、printStackTrace(); } } }); } /** * Create the frame、 */ public Compuer() { setTitle("\u8BA1\u7B97\u5668"); setName(""); final StringBuffer s=new StringBuffer(); setDefaultCloseOperation(JFrame、EXIT_ON_CLOSE); setBounds(100, 100, 412, 448); contentPane = new JPanel(); contentPane、setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane、setLayout(null); textField = new JTextField(); textField、setEnabled(false); textField、setLocale(Locale、UK); textField、setForeground(Color、PINK); textField、setText(" \u6B22\u8FCE\u4F7F\u7528\u8BA1\u7B97\u5668"); textField、setBounds(10, 20, 368, 30); contentPane、add(textField);

java简单计算器源代码

简单计算器代码 package calcultorthree; import java.awt.BorderLayout;//导入边界布局管理器类 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;//导入面板 /** *本例实现了简单计算器代码,具备加减乘除和正弦功能,旨在抱砖引玉。熟悉java的同学,可以在此基础上实现更复杂的功能。 * @author Fjsh */ public class CalcultorThree { //新建对象,在构造函数中进行初始化 JFrame frame;//新建窗体对象 JButton buttonzero,buttondot,buttonequal;//新建按钮“0”“.”“=” JButton buttonplus,buttonminus,buttonmultiple,buttondevision, buttonsin,buttontozero;//新建按钮“+”“-”“*”“/”“sin”和归零按钮JButton buttonone,buttontwo,buttonthree,buttonfour,buttonfive,buttonsix, buttonseven,buttoneight,buttonnine;//新建数字按钮“0”“1”“2”“3”“4”“5”“6”“7”“8”“9” JPanel panelwest,panelcenter,paneleast;//新建三个面板 TextField tf;//新建文本区域对象 public CalcultorThree(){ //初始化对象 tf=new TextField(30);//构造空文本字段,字符宽度为30 frame =new JFrame("CalculatorThree");//构造窗体对象,名称为“CalculatorThree”

简易计算器Java实训报告

实训报告书实训名称:Java程序设计实训 系(部):信息工程系 专业班级:计算机科学与技术 学生姓名: 学号: 指导教师:张民 完成日期:2015.12.11 山东科技大学泰山科技学院

课程实训报告书

目录 1 实训目的 (3) 2 简易计算机的分析与设计 (3) 2.1 系统功能描述 (3) 2.2 系统模块设计 (3) 2.3 数据库结构设计 (4) 3 主要代码清单 (5) 4 程序运行与测试 (9) 5 实训总结 (11)

简易计算机的设计与实现 1 实训目的 通过本课程设计能够较全面的掌握面向对象程序设计的有关概念和开发方法,以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力。利用Java Applet图形界面首先开始设计一个计算器的界面,定义计算器所需要的按钮并赋给其按钮名称,使得使用计算器时简单明了,清晰可见,操作轻松。 给各个按钮进行算法,利用鼠标点击事件,当鼠标点击某个按钮时就开始执行那个按钮所定义的算法,生成数据并显示。 除数字的输入为直接进行输入外,其他运算例如+、-、*、/、开平方等算法要求计算时通过内部较为复杂的运算将结果显示在显示屏上。 至于其中的进制转换功能的实现则是直接调用Java中进制转换的函数,例如要将十进制转换成二进制则可直接调用函数Integer.toBinaryString(int i)来实现,充分显示了Java语言的简洁性和Java语言功能的强大性。 当然了在输入数据时还要进行异常捕捉,防止越界的现象的发生,这也是Java语言健壮性的体现! 2 简易计算机的分析与设计 2.1 系统功能描述 1)可进行“+”、“-”、“*”、“/”以及混合运算。 2)支持()改变运算的优先级 3)可进行二、十六和十进制数的相互转换 4)支持复制和粘贴操作 2.2 系统模块设计 (1)加法 两个数据进行加操作,可以为小数。 (2)减法 两个数据进行减操作,可以为负数相减。( 3)乘法

Java带计算过程的计算器课程设计报告

保存计算过程的计算器 Java程序设计课程设计报告保存计算过程的计算器 目录 1 概述.............................................. 错误!未定义书签。 1.1 课程设计目的............................... 错误!未定义书签。 1.2 课程设计内容............................... 错误!未定义书签。 2 系统需求分析.......................................... 错误!未定义书签。 2.1 系统目标................................... 错误!未定义书签。 2.2 主体功能................................... 错误!未定义书签。 2.3 开发环境................................... 错误!未定义书签。 3 系统概要设计.......................................... 错误!未定义书签。 3.1 系统的功能模块划分......................... 错误!未定义书签。 3.2 系统流程图................................. 错误!未定义书签。4系统详细设计........................................... 错误!未定义书签。 5 测试.................................................. 错误!未定义书签。 5.1 测试方案................................... 错误!未定义书签。 5.2 测试结果................................... 错误!未定义书签。 6 小结.................................................. 错误!未定义书签。参考文献................................................ 错误!未定义书签。附录................................................ 错误!未定义书签。 附录1 源程序清单...................................... 错误!未定义书签。

简易计算器Java实训报告

实训名称: Java程序设计实训 系(部):信息工程系 专业班级:计算机科学与技术学生姓名: 学号: 指导教师:张民 完成日期:

山东科技大学泰山科技学院

目录 1 实训目的 (2) 2 简易计算机的分析与设计 (2) 系统功能描述 (2) 系统模块设计 (2) 数据库结构设计 (3) 3 主要代码清单 (4)

4 程序运行与测试 (8) 5 实训总结 (10)

简易计算机的设计与实现 1 实训目的 通过本课程设计能够较全面的掌握面向对象程序设计的有关概念和开发方法,以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力。利用Java Applet图形界面首先开始设计一个计算器的界面,定义计算器所需要的按钮并赋给其按钮名称,使得使用计算器时简单明了,清晰可见,操作轻松。 给各个按钮进行算法,利用鼠标点击事件,当鼠标点击某个按钮时就开始执行那个按钮所定义的算法,生成数据并显示。 除数字的输入为直接进行输入外,其他运算例如+、-、*、/、开平方等算法要求计算时通过内部较为复杂的运算将结果显示在显示屏上。 至于其中的进制转换功能的实现则是直接调用Java中进制转换的函数,例如要将十进制转换成二进制则可直接调用函数(int i)来实现,充分显示了Java语言的简洁性和Java语言功能的强大性。 当然了在输入数据时还要进行异常捕捉,防止越界的现象的发生,这也是Java语言健壮性的体现! 2 简易计算机的分析与设计 系统功能描述 1)可进行“+”、“-”、“*”、“/”以及混合运算。 2)支持()改变运算的优先级 3)可进行二、十六和十进制数的相互转换 4)支持复制和粘贴操作

java简单界面计算器

package calculator; import java.awt.BorderLayout; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JTextField; /** * * @author 某某某 * */ public class Calculator extends JFrame implements ActionListener{ //设计按钮数组1包含数字键和删除键DEL和清屏键,小数点。 JButton[] but1 = {new JButton("1"),new JButton("2"),new JButton("3"),new JButton("4"),new JButton("5"),new JButton("6") ,new JButton("7"),new JButton("8"),new JButton("9"),new JButton("."),new JButton("0"),new JButton("del")}; //设计按钮数组2包含加减乘除,开根号,取余,等于键,平方,三次方。 JButton[] but2 = {new JButton("+"),new JButton("-"),new JButton("*"),new JButton("/"),new JButton("^2"),new JButton("^3"),new JButton("%") ,new JButton("sqrt"),new JButton("exit"),new JButton("="),new JButton("AC")} ; //创建一个单行文本 JTextField text = new JTextField(25); //创建五个面板 JPanel jp1 = new JPanel(); JPanel jp2 = new JPanel(); JPanel jp3 = new JPanel(); JPanel jp4 = new JPanel(); JPanel jp5 = new JPanel();

用java编写简单计算器

用java写了一个简单计算器,能实现简单的数据计算。 一、先写界面代码: 在UI包里面新建一个Class文件,取名自己想,这里我写的是CalculatorFrame package ui; import java.awt.Color; import java.awt.Font; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTextArea; import javax.swing.border.TitledBorder; public class CalculatorFrame extends JFrame { private static final long serialV ersionUID = 1L; public String opt; public String str; private JTextArea show; private ClientContext clientContext;//引用控制器对象 /*因为调用了控制器里面的方法,所以要对控制器的对象进行赋值,否则运行会出现空指针异常*/ public void setClientContext(ClientContext clientContext) { this.clientContext = clientContext; } public CalculatorFrame() { init(); } private void init() { setTitle(" Simple Calculator"); setBounds(533, 184, 300, 400); setContentPane(creatContentPane()); }

java课程设计报告_简单图形界面计算器的设计

Java 课程设计 简单图形界面计算器的设计 课程名称 Java程序设计 选题名称简单图形界面计算器的设计 专业 班级 姓名 学号 指导教师 简单图形界面计算器的设计

一、设计任务与目标 本次java程序设计我的设计任务是设计一个图形界面(GUI)的计算器应用程序并且能够完成简单的算术运算。本次任务的基本要求是这个计算器应用程序可以完成十进制的加、减、乘、除、求倒、取余、开方运算,且有小数点、正负号、退格和清零功能。而我要在此基础上添加一项千位符分隔符的功能,即以三位为一级,在输入的一串数字中每三位加入一个逗号,这项功能国际通用,并已经成为惯例,会计记账都用这种方法便于账目核算与管理。 GUI计算器设计的具体目标: 1.完成十进制的加、减、乘、除、求倒、取余和开方运算; 2.有小数点和正负号加入运算; 3.有退格、复位和清零的功能; 4.有千位符分隔符的功能,即在输入的一串数字中每三位加入一个逗号。 二、方案设计与论证 1.设计目标的总体分析 (1)设计目标的需求分析:计算器是现在一个普遍应用的工具,能够解决许多人工所无法计算的数据,节省大量宝贵的时间。 (2)设计目标的功能分析:实现计算器系统的功能,主要有两个功能模块:输入和输出。 (3)设计原则:基于计算器系统要具有适用性广、操作简便等特点,本系统预计要达到以下几个目标:①满足以上的基本功能要求;②能够在常见的计算机及其操作系统上运行。 2.设计的基本思路 利用GUI的界面设计,将整个大设计分为三块,分别是数据的输入,运算符

功能符的控制和数据的输入输出显示。利用Swing控件,数据的输入由0~9这10个按钮来表示,用“+”、“-”、“*”、“/”、“1/x”、“%”、“sqrt”这7个按钮来表示加、减、乘、除、求倒、取余、开方运算,用“.”和“±”这2个按钮来表示小数点和正负号,用“Back”、“CE”和“C”这3个按钮来表示退格、复位和清零的功能,数据的输入输出显示由文本字段来表示。将计算器的总体界面设计好后,再将代码分别写入不同的按钮的源程序中。 我要完成的一项改进,即添加一个拥有千位符分隔符功能的按钮,按下这个按钮能够在输入的一串数字中每三位加入一个逗号并且显示出来。我要在之前的界面设计的基础上多添加一个按钮“$”来表示千位符分隔符,并且将功能代码写入这个按钮的源程序中。 三、程序流程图,程序清单与调用关系 1. 程序流程图:

java编写简单计算器源代码

import javax.swing.*; import java.awt.event.*; import java.awt.*; import https://www.doczj.com/doc/1e14780914.html,ng.Math; class ring extends JFrame implements ActionListener { //定义成员变量: //JFrame frame;//定义一个窗口类; JTextField text;//定义一个文本框类; JLabel label;//定义一个标签类; JPanel p1,p2,p3,p4,p5,p6;//定义面板类; String s1,s,s2;//定义三个字符串变量; int count=0; JButton a1,a2,a3,a4,a5,a6,b1,b2,b3,b4,b5,b6,c1,c2,c3,c4,c5,c6,d1,d2,d3,d4 ,d5,d6; //ring的构造函数; ring() { this.setTitle("计算器"); // super("计算器"); JMenuBar menubar1=new JMenuBar();//新建菜单条; this.setJMenuBar(menubar1); JMenu menu1=new JMenu("编辑(E)"); JMenu menu2=new JMenu("查看(V)"); JMenu menu3=new JMenu("帮助(H)"); menubar1.add(menu1); menubar1.add(menu2); menubar1.add(menu3); JMenuItem item1=new JMenuItem("复制(c) ctrl+c"); JMenuItem item2=new JMenuItem("粘贴(p) ctrl+v"); JMenuItem item3=new JMenuItem("标准型(T)"); JMenuItem item4=new JMenuItem("科学型(s)"); JMenuItem item5=new JMenuItem("数字分组(I)"); JMenuItem item6=new JMenuItem("帮助主题(H)"); JMenuItem item7=new JMenuItem("关于计算机(A)"); menu1.add(item1); menu1.add(item2); menu2.add(item3); menu2.add(item4); menu2.add(item5); menu3.add(item6);

java简单计算器源代码

j a v a简单计算器源代码集团企业公司编码:(LL3698-KKI1269-TM2483-LUI12689-ITT289-

简单计算器代码packagecalcultorthree; /** *本例实现了简单计算器代码,具备加减乘除和正弦功能,旨在抱砖引玉。熟悉java的同学,可以在此基础上实现更复杂的功能。 *@authorFjsh */ publicclassCalcultorThree{ //新建对象,在构造函数中进行初始化 JFrameframe;//新建窗体对象 JButtonbuttonzero,buttondot,buttonequal;//新建按钮“0”“.”“=”JButtonbuttonplus,buttonminus,buttonmultiple,buttondevision, buttonsin,buttontozero;//新建按钮“+”“-”“*”“/”“sin”和归零按钮JButtonbuttonone,buttontwo,buttonthree,buttonfour,buttonfive,buttonsix, buttonseven,buttoneight,buttonnine;//新建数字按钮 “0”“1”“2”“3”“4”“5”“6”“7”“8”“9” JPanelpanelwest,panelcenter,paneleast;//新建三个面板 TextFieldtf;//新建文本区域对象 publicCalcultorThree(){ //初始化对象 tf=newTextField(30);//构造空文本字段,字符宽度为30 frame=newJFrame("CalculatorThree");//构造窗体对象,名称为“CalculatorThree”

Java实现简易计算器

Java实训作业题目:Java实现简易计算器 学院: 姓名: 学号: 班级: 20 年月

一、实验目的 通过课程设计,主要要达到两个目的,一是检验和巩固专业知识、二是提高综合素质和能力。此次课程设计实训主要是Java语言程序设计的实现。通过该课程设计,可以将课堂上掌握的理论知识与处理数据的业务相结合,以检验自己掌握知识的宽度、深度及对知识的综合运用能力。 二、实验要求 用Java编写一个简单的计算器,使其能够实现最基本的功能,如简单的加、减、乘、除;平方根,倒数,平方等功能。 三、详细内容 1.界面设计 界面设计使用GUI,其中有用到swing组件的TextField和Button,用到awt中的BorderLayout和GridLayout布局管理方式,其图形界面如图1-1所示:

图1-1 其中主要代码为: public mainWindow(){ this.setTitle("计算器");//用户图形界面标题 this.setVisible(true);//用户图形界面可缩小 this.setResizable(false);//用户图形界面不可放大 this.setSize(350,300);//设置用户图形界面的大小 this.setLocation(400,150);//用户图形界面在屏幕中的显示位置 JPanel panel1 = new JPanel();//新建一个画板 JPanel panel2 = new JPanel(); button1 = new JButton("1"); ... reset = new JButton("CE"); Container container = this.getContentPane(); container.add(panel2,BorderLayout.NORTH); container.add(panel1); panel1.setLayout(new GridLayout(5,4));//将画板1分为4行5列 result.setEnabled(false); result.setFont(new Font("Dialog",Font.BOLD,25));//运算结果的字体大小 result.setEditable(false); result.setHorizontalAlignment(SwingConstants.RIGHT); panel1.add(reciprocal);//分别将20个按钮依次添加到画板panel1中,并设置各自的大小 reciprocal.setFont(new Font("Dialog",Font.PLAIN,20)); ... panel1.add(divide);

Java实现简易计算器

Java实训作业 题目:Java实现简易计算器 学院: 姓名: 学号: 班级: 20 年月

一、实验目的 通过课程设计,主要要达到两个目的,一是检验和巩固专业知识、二是提高综合素质和能力。此次课程设计实训主要是Java语言程序设计的实现。通过该课程设计,可以将课堂上掌握的理论知识与处理数据的业务相结合,以检验自己掌握知识的宽度、深度及对知识的综合运用能力。 二、实验要求 用Java编写一个简单的计算器,使其能够实现最基本的功能,如简单的加、减、乘、除;平方根,倒数,平方等功能。 三、详细内容 1.界面设计 界面设计使用GUI,其中有用到swing组件的TextField和Button,用到awt中的BorderLayout和GridLayout布局管理方式,其图形界面如图1-1所示: 图1-1

其中主要代码为: public mainWindow(){ this.setTitle("计算器");//用户图形界面标题 this.setVisible(true);//用户图形界面可缩小 this.setResizable(false);//用户图形界面不可放大 this.setSize(350,300);//设置用户图形界面的大小 this.setLocation(400,150);//用户图形界面在屏幕中的显示位置 JPanel panel1 = new JPanel();//新建一个画板 JPanel panel2 = new JPanel(); button1 = new JButton("1"); ... reset = new JButton("CE"); Container container = this.getContentPane(); container.add(panel2,BorderLayout.NORTH); container.add(panel1); panel1.setLayout(new GridLayout(5,4));//将画板1分为4行5列 result.setEnabled(false); result.setFont(new Font("Dialog",Font.BOLD,25));//运算结果的字体大小 result.setEditable(false); result.setHorizontalAlignment(SwingConstants.RIGHT); panel1.add(reciprocal);//分别将20个按钮依次添加到画板panel1中,并设置各自的大小 reciprocal.setFont(new Font("Dialog",Font.PLAIN,20)); ... panel1.add(divide); divide.setFont(new Font("Dialog",Font.PLAIN,20)); panel2.setLayout(new GridLayout()); panel2.add(result);//画板panel2添加运算结果 2.四则运算 较为简单的实现了简单的加、减、乘、除运算,主要代码如下:

JavaSwing计算器设计

JavaSwing计算器设计 《java程序设计》课程设计报告 课题名称:GUI计算器设计 略 …… 略 提交报告时间:2008 年12 月20 日1. 课程设计题目 基于GUI的计算器设计 2. 课程设计目的 1. 巩固和加深课堂所学知识; 2. 将课本上的理论知识和实际应用有机的结合起来,培养同学们分析和解决实际问题的能力; 3. 通过对java语言程序代码的阅读、修改、设计,理解和掌握复杂的java语言应用程序的编程,提高实践编程能力。

3. 程序运行环境及开发工具 本程序在Windows XP的PC机上利用Jbuilder9.0的软件开发实现,在Windows XP平台上Jbuilder9.0及Eclipse环境中运行通过。 4. 程序功能使用说明 运行该程序后,参与运算的操作数可有鼠标点击相应按钮输入,也可有键盘输入,但操作符应有鼠标点击相应的按钮,当: 1.在简易计算中可以按照常规输入计算,基本无bug, “%”未设置其用途; 2.简易计算中,可以进行+、-、*、/、乘方(^)、开方(√)及阶乘(!)运算; 3.科学计算中有许多功能为实现,主要能进行加、减、乘、除、乘方、开方、幂、开n次方、倒数、阶乘、ln、e的x 次幂、三角函数等高级运算; 4.例如: (1). 1 + 9 = 10 (2). 25 + -8 = 17 (3). 98 - 35 = 63 (4). 96 * 2 = 192 (5). 96 / 4 = 24 (6). 4 ^ 3 = 64

(7). 100 √ = 10 (8). -9 √ = 不能执行此操作!! (9). 20 ! = 2432902008176640000 (10). -20 ! = 不能执行此操作!! (11). 0 ! = 1 (12). 8 ln = 2.0794415416798357 (13). 2 Exp = 7.38905609893065 (14). 8 x^y 3 = 512 (15). 20 x^2 = 400 (16). 100 n!= 933262154439441526816992388562667004907159682643816 214685929638952175999932299156089414639761565182862 536979208272237582511852109168640000000000000000000 00000 (17). 30 sin = 0.49999999999999994(0.5) (求sin30度) 其他(cos,tan)依次类推; (18).1/x计算有bug; (19). 3 x√ 8 = 2 (求8开3

Java大作业--计算器

J a v a大作业--计算器-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

JAVA大作业 简易计算器 课程名称: Java开发技术 教学班级: B02班 学院:信息管理学院 2013~2014学年第1学期 (第 1 册共 1 册) 目录 1 引言 (4) 1.1 开发背景 (4)

1.2 项目目标 (4) 1.4 计算器的基本情况 (4) 2技术支持 (5) 2.1 Applet概述 (5) 3系统设计及实现 (5) 3.1 系统功能实现 (5) 3.2 系统界面设计 (6) 3.3 系统函数功能说明 (6) 4 计算器的测试 (6) 4.1 测试“输入”功能 (6) 4.2 测试“输出结果”功能 (8) 4.3 测试“清零功能”功能 (8) 5 分析与总结 (9) 5.1 个人总结 (9)

1 引言 1.1 开发背景 电脑已经深入到日常生活和工作的方方面面,例如文字办公、信息管理、图像处理、游戏娱乐等,尤其是游戏。电脑游戏行业经过二十年的发展,已经成为与影视、音乐等并驾齐驱的全球最重要的娱乐产业之一,其年销售额超过好莱坞的全年收入。Java 语言作为一种面向对象的编程语言,具有分布式、可移植性、高性能、多线程等特点。对于一名学生来说,在系统的学习了Java后,面对这次的大作业,正好将学过的Java 语言中的各种技术综合起来编写小程序。即对自己学过的技能进行一次检验,也能系统的将学过的知识复习巩固。 1.2 项目目标 开发一个计算器小程序,具有整数和小数的加减乘除功能,数据记忆清除功能。1.3开发环境 Eclipse3.5 Java集成开发环境 1.4 计算器的基本情况 最早的计算工具诞生在中国。中国古代最早采用的一种计算工具叫筹策,又被叫做算筹。这种算筹多用竹子制成,也有用木头,兽骨充当材料的.约二百七十枚一束,放在布袋里可随身携带。直到今天仍在使用的珠算盘,是中国古代计算工具领域中的另一项发明,明代时的珠算盘已经与现代的珠算盘几乎相同。 17世纪初,西方国家的计算工具有了较大的发展,英国数学家纳皮尔发明的"纳皮尔算筹",英国牧师奥却德发明了圆柱型对数计算尺,这种计算尺不仅能做加减乘除、乘方、开方运算,甚至可以计算三角函数,指数函数和对数函数,这些计算工具不仅带动了计算器的发展,也为现代计算器发展奠定了良好的基础,成为现代社会应用广泛的计算工具。 1642年,年仅19岁的法国伟大科学家帕斯卡引用算盘的原理,发明了第一部机械式计算器,在他的计算器中有一些互相联锁的齿轮,一个转过十位的齿轮会使另一个齿轮转过一位,人们可以像拨电话号码盘那样,把数字拨进去,计算结果就会出现在另一个窗口中,但是只能做加减计算。1694年,莱布尼兹在德国将其改进成可以进行乘除的计算。此后,一直要到20世纪50年代末才有电子计算器的出现。

简单计算器(java)

简单计算器.java package简单计算器; publicclass简单计算器{ publicstaticvoid main(String args[]){ WindowOperation win=new WindowOperation(); win.setBounds(100,100,390,360); win.setTitle("简单计算器"); } } package 简单计算器; import java.awt.*; import javax.swing.*; import java.io.*; public class WindowOperation extends JFrame{ JTextFieldinputNumberOne,inputNumberTwo; JComboBoxchoiceFuhao; JTextAreatextShow; JButton button; OperatorListener operator; //监视ItemEvent时间的监听器 ComputerListener computer; //监视ActionEvent事件的监听器

public WindowOperation(){ init(); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } void init(){ setLayout(new FlowLayout()); inputNumberOne=new JTextField(5); inputNumberTwo=new JTextField(5); choiceFuhao=new JComboBox(); button=new JButton("计算"); choiceFuhao.addItem("选择运算符号:"); String [] a={"+","-","*","/"}; for(inti=0;i

相关主题
文本预览
相关文档 最新文档