java计算器课程设计报告-包含代码_第1页
java计算器课程设计报告-包含代码_第2页
java计算器课程设计报告-包含代码_第3页
java计算器课程设计报告-包含代码_第4页
java计算器课程设计报告-包含代码_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上精选优质文档-倾情为你奉上专心-专注-专业专心-专注-专业精选优质文档-倾情为你奉上专心-专注-专业青岛理工大学琴岛学院设 计 报 告课题名称:简单计算器的应用学 院:青岛理工大学琴岛学院专业班级:计算机应用技术092班学 号:学 生:刘书腾指导教师:代学卿、马金霞青岛理工大学琴岛学院教务处 2011年 7 月 7 日学 生刘书腾指导教师代学卿、马金霞课题名称简单计算器的应用设计时间设计地点图书馆506设计目的一、课题介绍1、课题要求(1)使用图形用户界面:一个文本框;0-9数字按钮;加、减、乘、除运算符;“等于”符号;复位按钮;(2)完成整数、实数的四则运算(加、减

2、、乘、除);(3)通过按钮点击实现数据的复位(清零);(4)实数运算中小数位的精度一致。2、课题设计思想对于此计算器程序,首先要设计其GUI界面,总体界面有一个文本框,18个按钮,总体界面用BorderLayout布局。 文本框放置在最NORTH,然后0到9以及+,-,*,/的按钮放置到一个面板Panel中,添加到整体布局的CENTER,界面设计完成。布局设计好后再添加按钮事件。对于此程序要考虑到点击加、减、乘、除按钮时是否有点击数字按钮,如果是第一次点击数字按钮或者是点击数字按钮前点击了加、减、乘、除按钮则直接把数字按钮的数值设置到文本框中,否则则应把文本框中的内容加上你所点击按钮的数值设置

3、到文本框中。这是计算器中的一种:简单计算器,本项目用到了Java中的GUI界面和swing组件以及awt布局,所以简单易用,它能完成如下的几个小功能:点击按钮中的数字键和运算符键就能进行简单的加、乘、乘、除求模四则运算 ; 还能通过用户自己在文本框中输入数字,进行简单运算;如果输入有误时可以按Clear撤销后重新输入新数据。二、详细设计过程1、界面设计界面设计要求用GUI,界面设计中有用到swing组件的TextField和Button,用awt中的BorderLayout和GridLayout布局管理方式,窗体名称jisuan继承JFrameActionListener接口,并实现publi

4、c void actionPerformed(ActionEvent e)方法。定义菜单、菜单条、菜单项、按钮、文本框、容器,设置为private类型。定义变量double memoryd;/使用内存中存储的数字;DecimalFormat df;/保留小数位数。使用private JButton getJButton()方法添加按钮并给按钮命名,使用setFont(new Font(楷体,Font.BOLD, 30);setForeground(new Color(250,0,0); 方法设置按钮的字体和字体颜色。设置数字按钮1到9并添加监控,使其在发生鼠标事件时改变按钮颜色,其图形界面如下

5、图1-1所示:图1-12、详细设计根据课题设计的具体要求画出如下图所示的流程图:图1-2(1)这段代码主要是对程序的主框架进行相应的设置Frame f=new Frame(计算器); f.setBackground(Color.lightGray); f.setForeground(Color.blue);f.add(p1,BorderLayout.NORTH);f.add(p2,BorderLayout.CENTER); f.add(p3,BorderLayout.SOUTH);f.setSize(350,300);/设置大小 f.setVisible(true);/设置为可视(2)设置数字

6、按钮1到9并添加监控,使其在发生鼠标事件时改变按钮颜色addMouseListener(new MouseListener() public void actionPerformed(MouseEvent e) jButton.setForeground(new Color(0,100,0);public void mouseClicked(MouseEvent e) jButton.setForeground(new Color(0,150,100);public void mouseEntered(MouseEvent e) jButton.setForeground(new Color(

7、0,0,250);public void mouseExited(MouseEvent e) jButton.setForeground(new Color(250,0,0);public void mousePressed(MouseEvent e) jButton.setForeground(new Color(0,250,0);public void mouseReleased(MouseEvent e) jButton.setForeground(new Color(250,250,0););(3)在基本的运算中重点介绍一下除法运算jButton3 = new JButton(x/y)

8、;定义double变量c用来存放从除数文本框中读出的数据,设置ifelse语句来判断当c=0时在文本框中输出“除数不能等于0”,否则就输出结果jButton3.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) double c=Double.parseDouble(jTextField.getText();double d=Double.parseDouble(jTextField.getText();double a;if(c=0)jTextField.setText(除数不能等

9、于0);elsea=d/c; jTextField.setText(Double.toString(d););(4)这段代码主要为窗口关闭按钮编写程序class closeWin extends WindowAdapter /为关闭按钮编写程序 public void windowClosing(WindowEvent e) System.exit(0); 计算器Result计算器显示结果的窗体Number_Key数字按钮面板Jisuanqi算法程序3、类的种类如图1-2显示 图1-3三、程序的调试与运行结果说明,下面列举几种特殊情况下的具体操作事例1: 当除数为0时,程序运行结果如图1-3:

10、图1-4事例2:4561+8715 预计结果 13276 实际结果如图1-4:图1-5存在问题因为第一次设计JAVA程序,有很多地方没有想到,这次设计计算器,也有很多没有完善的地方,比如:计算器除数不能为0,但我们这次设计的计算器没考虑到这个方面,使得计算器在这种情况下不能正常计算,后经过老师的知道和查阅参考书,解决了这个问题,只需一行代码即可:if(d3=0) tf.setText(除数不能为零)。主要收获这次的程序设计,从一个简单的计算器就可以看出JAVA的程序设计不是那么简单,仅仅是一个小小的计算器,就已经有很多需要注意的问题,一不小心就会出错,还会有很多地方没怎么明白,而计算器的设计是

11、最简单的几个设计其中之一,可见,平时的知识积累是很重要的。没有知识的积累,再简单的东西也不可能设计出来。课程设计还让我们练习了动手能力,使我们平时学习的知识得以在实际中应用,不会学死书,活学活用,很大程度上提高了我们的能力,对以后的学习、工作、生活也会有一定的帮助。通过此次的程序设计,让我了解了JAVA的更多知识,使平时的知识可以运用,更好的理解了JAVA这门课程。课程设计要求各专业学生应根据课程任教老师的要求,做出选题计划,并按下列要求完成课程设计任务。一、学生应按照老师的要求完成规定的课程设计任务量。二、课程设计报告书要求格式统一,字迹工整,语言简练,文字通顺,按课程设计格式要求书写。程序

12、清单不够填写时统一用A4纸补充并粘贴。对不按格式要求书写或打印的报告书一律不收,也不得进行答辩和评分。三、必须独立完成课程设计,不得相互抄袭。在答辩和批阅过程中发现源程序相同或有大面积抄袭现象,课程任教老师有权通知学生重做,不得给予评分,并通知相关系部做出处理。四、学生课程设计结束后应提交的材料:(1)课程设计说明书(3000字以上);(2)包含完整的、正确的源程序代码(含电子文档);(3)答辨材料(介绍课程设计要点)。 参考文献情况序号名 称编著者出版社1Java语言程序设计郑莉清华大学出版社2Java程序设计实训教程张小波冶金工业出版社3Java程序设计魏衍君中国商业出版社4Java应用与

13、开发案例教程徐谡清华大学出版社教师评价情况指导老师评语: 指导老师:_(签名) 日 期: 年 月 日学生答辩情况答辩(组)评语:主答辩老师:_(签名)答 辩 日期: 年 月 日综合成绩评定情况综合评价等级:_注:共分五个等级 (1.优秀 2、良好 3、中等 4、及格 5、不合格) 课程设计考核情况课程设计报告书目录一、设计课题5二、设计目的5三、操作环境5四、设计场所(机房号、机器号或自己机器)5五、设计过程(设计内容及主要程序模块)6六、本次设计中用到的课程知识点(列出主要知识点)16七、设计过程中遇到的问题及解决办法16八、程序清单18一、设计课题及内容课题:计算器内容:该程序是一个图形界

14、面的计算器,可以在标准计算器和科学计算器之间切换,标准计算器的基本功能有:加、减、乘、除基本算术运算;科学计算器的基本功能有:三角函数、进制转换、对数、阶乘;一元二次方程界面可以求一元二次方程的解;勾股定理界面可以求直角三角形边长。二、设计目的进一步掌握和理解java程序编程;进一步掌握java语言的基本数据类型,熟悉定义变量和使用变量;理解java图形用户界面的基本工作原理和界面设计;巩固窗体的布局设计;掌握窗体按钮控件和文本控件对事件的响应;理解函数和方法的使用。三、操作环境操作系统:Microsoft Windows XP ProfessionalCPU:Intel Pentium 4

15、3.06GHz内存:512 M四、设计场所4306教室自己笔记本五、设计过程(设计内容及主要模块,不少于3000字)设计要求标准计算器:加、减、乘、除、求平方根;科学计算器:进制转换、求解三角函数、对数运算、阶乘;一元二次方程:求一元二次方程的解;勾股定理:求直角三角边长。总体设计功能模块图,如图1。图1 功能模块图一元二次方程界面图科学计算器界面,如图2。图2一元二次方程界面图标准计算器界面,如图3。图3 标准计算器界面图勾股定理科学计算器界面图,如图4。图4 勾股定理界面图科学计算器界面图,如图5。图4 科学计算器界面图详细设计流程图,如图6。图6 流程图设置窗体窗体名称biaozhun继

16、承JFrame类和ActionListener接口,并实现public void actionPerformed(ActionEvent e)方法。定义菜单、菜单条、菜单项、按钮、文本框、容器,设置为private类型。定义变量double memoryd;/使用内存中存储的数字;DecimalFormat df;/保留小数位数。使用private JButton getJButton()方法添加按钮并给按钮命名,使用setFont(new Font(楷体, Font.BOLD, 30); setForeground(new Color(250,0,0);方法设置按钮的字体和字体颜色。设置数字

17、按钮1到9并添加监控,使其在发生鼠标事件时改变按钮颜色addMouseListener(new MouseListener()public void actionPerformed(MouseEvent e) jButton.setForeground(new Color(0,100,0);public void mouseClicked(MouseEvent e) jButton.setForeground(new Color(0,150,100);public void mouseEntered(MouseEvent e) jButton.setForeground(new Color(0

18、,0,250);public void mouseExited(MouseEvent e) jButton.setForeground(new Color(250,0,0);public void mousePressed(MouseEvent e) jButton.setForeground(new Color(0,250,0);public void mouseReleased(MouseEvent e) jButton.setForeground(new Color(250,250,0););开根号运算,定义jButton2 = new JButton(sqrt);对其设置监控,调用Ma

19、th.sqrt()方法来实现开根号运算,并在文本框中输出结果,jButton2.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) double a=Double.parseDouble(jTextField.getText();double b;if(a=0&e.getKeyChar()=9)str+=e.getKeyChar();jTextField.setText(str);else if(e.getKeyChar()=KeyEvent.VK_BACK_SPACE)str=st

20、r.substring(0, str.length()-1);jTextField.setText(str);else if(e.getKeyChar()=KeyEvent.VK_ESCAPE)str=;jTextField.setText(str););定义jButton20、jButton21、jButton22、jButton23分别为MC、MR、MS、M+,并且对按钮添加监听,计算器内部有一个存贮器,假设将其称为“寄数器”。MS是将当前窗口数据写入“寄数器”,M+是将当前窗口数据与“寄数器”内的数据相加后再存入“寄数器”,MR是读出“寄数器”内的数据到窗口,MC是清除“寄数器”内的数据

21、,使其为0。按钮实现方法在public void actionPerformed(ActionEvent e)中实现,public void actionPerformed(ActionEvent e) Object temp = e.getSource();if (temp = jButton20) memoryd = memoryi = 0; textMemory.setText(ZY ); textMemory.setFont(new Font(华文行楷, Font.BOLD, 30); /MS的操作,将当前文本框内容保存入内存,显示M if (temp = jButton22) /te

22、xtMemory显示m的文本框 boolean isDot = false; textMemory.setText( M ); textMemory.setFont(new Font(楷体, Font.BOLD, 30); for (int i = 0; i jTextField.getText().length(); i+) if (. = jTextField.getText().charAt(i) isDot = true; break; /如果是double,则存入memoryd(double存储器) if (isDot = true) memoryd = Double.parseDo

23、uble(jTextField.getText(); memoryi = 0; /保证存储器中存放最新的值 /如果是int,则存入memoryi(int存储器) else memoryi = Integer.parseInt(jTextField.getText(); memoryd = 0; /保证存储器中存放最新的值 /MR的操作,将存储器中的信息输出 if (temp = jButton21) if (memoryd != 0) jTextField.setText(Double.toString(memoryd); if (memoryi != 0) jTextField.setTex

24、t(Integer.toString(memoryi); /M+的功能,将当前文本框里的数据和存储器中数据相加后,再存入存储器 if (temp = jButton23) textMemory.setText( M ); textMemory.setFont(new Font(楷体, Font.BOLD, 30); boolean isDot = false; for (int i = 0; i jTextField.getText().length(); i+) if (. = jTextField.getText().charAt(i) isDot = true; break; if (m

25、emoryi != 0) /存储中是一个int型数 if (isDot = false) /被加数是一个int型数 memoryi += Integer.parseInt(jTextField.getText(); else /被加数是一个double型数,则将int存储器中数传入double存储器与当前数相加,int存储器清零memoryd = memoryi + Double.parseDouble(jTextField.getText(); memoryi = 0; else memoryd += Double.parseDouble(jTextField.getText(); 设置退格

26、按钮backspace,为jButton24添加监控ActionListener,通过引用全局变量str,str为string类型的变量jButton24.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) if(str.length()!=0)str=str.substring(0, str.length()-1);jTextField.setText(str););设置清空按钮C,添加监控,在单击C时通过改变全局变量str的值来实现功能,单击时就将str的值赋为空,文本框jTex

27、tField通过调用setText将str的值输出。jButton26.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) str=;jTextField.setText(str););添加菜单条jJMenuBar,在jJMenuBar中通过add来添加获取菜单的方法getJMenu,以此将菜单添加到菜单条中。菜单分别为编辑、查看、帮助。这三个菜单分别在其对应的getJMenu()方法中定义,编辑菜单下定义了菜单项复制和黏贴,查看菜单下定义了标准型、科学型、勾股定理、解一元二次方程四

28、个菜单项,标准型通过jMenuItem4.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) df=new DecimalFormat(#.#);/保留15位小数biaozhun.this.setBounds(400, 200, 600, 590);biaozhun.this.setJMenuBar(getJJMenuBar();biaozhun.this.setContentPane(getJContentPane1();/将jContentPane1面板添加到jFrame框架上

29、biaozhun.this.setTitle(计 算 器);Image image=biaozhun.this.getToolkit().getImage(计算器图标.jpg);biaozhun.this.setIconImage(image);biaozhun.this.setVisible(true);jTextField.addActionListener(this););方法来实现窗体之间切换。setBounds()方法实现窗体的显示位置和窗体大小,setVisible()将其设置为true使其变为可见。使用相同的方法实现窗体之间相互切换,其中标准型和科学型在同一个窗体中,通过改变窗体

30、大小和窗体添加控件来实现标准型和科学型两种计算器所需要的按钮。勾股定理、解一元二次方程通过改变setVisible()的值为true和false来实现窗体切换。帮助菜单下添加帮助主题和关于计算器选项,当单击帮助主题时就打开系统中关于计算器的帮助文件,单击关于计算器时就会打开一个窗体显示关于计算器的内容,当单击确定按钮时就会关闭关于计算器窗体。定义JPanel类型的变量jPanel、jContentPane,在容器jPanel中添加标准计算器的右下角的按钮,jContentPane中添加退格、清除、MS、MR、MC、M+按钮,jPanel在方法getJPanel()中,jContentPane在

31、方法getJContentPane()中,窗体通过this.setJMenuBar(getJJMenuBar();this.setContentPane(getJContentPane();将控件添加到窗体中。定义进制转换按钮,jButton31、jButton34、jButton37、jButton40分别为十六进制、十进制、八进制、二进制,通过调用Integer.toHexString(n)十六进制、Integer.toOctalString(n)八进制、Integer.toBinaryString(n)二进制来实现进制之间的相互转换。定义三角函数sin、cos、tan但是在使用需要先调用

32、弧度按钮,将相应的角度转换成弧度以后在使用三角函数对应的按钮才可以实现求三角函数的值。求弧度方法在定义弧度按钮时实现,string.valueOf(i/180*Math.PI)求对应的弧度sin、cos、tan使用math中的方法。定义阶乘按钮jButton42,实现求阶乘方法,jButton42.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) double i=Double.parseDouble(jTextField.getText();if(i%2=0)|(i%2=1)/判

33、断为整数进行阶乘操作int j=(int)i;/强制类型转换int result=1; for(int k=1;k0)jTextField.setText(String.valueOf(df.format(Math.log10(i);else jTextField.setText(负数不能求对数!););定义ln按钮,方法调用Math.log1p(i),当对数值i大于0时就调用Math.ln(i)来输出结果,当i小于0时就在文本框中显示负数不能求对数!。jButton44.addActionListener(new ActionListener() public void actionPerf

34、ormed(ActionEvent e) double i=Double.parseDouble(jTextField.getText();if(i0)jTextField.setText(String.valueOf(df.format(Math.ln(i);elsejTextField.setText(负数不能求对数!););将科学计算器按钮添加到jPanel1中,通过getJPanel1()方法返回jPanel1,再定义jContentPane1,将jPanel1、按钮、文本框添加到jContentPane1中,通过调用getJContentPane1()返回jContentPane1,

35、窗体通过调用this.setContentPane(getJContentPane1();在窗体中显示出相对应的按钮。书写主函数biaozhun thisClass = new biaozhun();thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/关闭窗口thisClass.setVisible(true);在定义三个窗体gougudingli、guanyujisuanqi2、一元二次方程用来在调用时使用。设置标题栏的图标Image image=biaozhun.this.getToolkit().getImage(计算器图标

36、.jpg);biaozhun.this.setIconImage(image);使用getImage()方法返回此图标的image并赋给image,通过this来调用setIconImage(imager)方法来改变窗体标题栏上的图标六、设计中用到的课程知识点Java语言程序设计:1布局管理器:borderLayout、gridLayout、 setLayout;2组件:JFrame、JPanel、JButton、JTextField、JMenuBar、JMenu、JMenuItem 3图形用户界面;4类的继承、接口的继承;5监听器的使用;6Math方法的使用;7强制类型转换;七、设计中遇到的

37、问题及解决方法1设置计算器MR、MC、MS、M+时遇到问题,开始不知道怎么去实现,后来通过上网查找相关代码得以解决,设置double memoryd和int memoryi来使用内存中的数据。2进制转换的实现,进制转换的功能没有完全实现, 通过调用 Integer.toHexString(n)十六进制、Integer.toOctalString(n)八进制、Integer.toBinaryString(n)二进制可以将数字转换成对应的进制类型,但是没有实现从十六进制转换成十进制。3在按钮添加监控事件时出现问题,例如addActionListener(new ActionListener() p

38、ublic void actionPerformed(ActionEvent e) )如果在方法体中书写if(e.getSource()=jMenuItem5)就会出现错误,必须是在public void actionPerformed(ActionEvent e)方法体中实现方法。4在科学型和标准型计算器之间的窗体转换出现问题,对响应的菜单项添加监控和响应的按钮添加到容器以后,可以实现从标准型转换到科学型,但是当单击标准型按钮以后却无法将窗体转换到标准型,只能显示标准型的窗体,但是在窗体中却没有按钮和文本框,通过改变相对应的容器进行改进。5在设置一元二次方程窗体时,单击计算按钮时却没有在文本

39、框中输出对应的结果,但是对按钮和文本框都添加了addActionListener(this),而且在算法的编写中也没有出现错误,原因是在文本框中数据读出和写入时类型转换出现错误。6在改变窗体上的图标时出现错误,显示图标的语句并没有出现错误,而且也导入了相关的image包,Image image=this.getToolkit().getImage(计算器图标.jpg); this.setIconImage(image);后来更改图片的后缀就可以显示图片了,将后缀gif改为jpg就可以。7在标准计算器中显示关于计算器窗体时,单击确定按钮关闭关于计算器窗体时需要单击两次确定按钮才可以关闭窗体,显示

40、标准计算器窗体。八、程序清单1标准计算器和科学计算器代码import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.text.DecimalFormat;public class biaozhun extends JFrame implements ActionListener private static final long serialVersionUID = 1L;private JPanel jContentPane = null;private JPanel jPanel = null;pri

41、vate JButton jButton = null;private JButton jButton1 = null;private JButton jButton2 = null;private JButton jButton3 = null;private JButton jButton4 = null;private JButton jButton5 = null;private JButton jButton6 = null;private JButton jButton7 = null;private JButton jButton8 = null;private JButton

42、jButton9 = null;private JButton jButton10 = null;private JButton jButton11 = null;private JButton jButton12 = null;private JButton jButton13 = null;private JButton jButton14 = null;private JButton jButton15 = null;private JButton jButton16 = null;private JButton jButton17 = null;private JButton jBut

43、ton18 = null;private JButton jButton19 = null;private JTextField jTextField = null;private JTextField textMemory= null;/作为输入M用private JButton jButton20 = null;private JButton jButton21 = null;private JButton jButton22 = null;private JButton jButton23 = null;private JButton jButton24 = null;private J

44、Button jButton25 = null;private JButton jButton26 = null;double memoryd; /使用内存中存储的数字int memoryi;/科学计算器按钮private JButton jButton31 = null;private JButton jButton32 = null;private JButton jButton33 = null;private JButton jButton34 = null;private JButton jButton35 = null;private JButton jButton36 = nul

45、l;private JButton jButton37 = null;private JButton jButton38 = null;private JButton jButton39 = null;private JButton jButton40 = null;private JButton jButton41 = null;private JButton jButton42 = null;private JButton jButton43 = null;private JButton jButton44 = null;private JButton jButton45 = null;/

46、A-Fprivate JButton jButton46 = null;private JButton jButton47 = null;private JButton jButton48 = null;private JButton jButton49 = null;private JButton jButton50 = null;private JButton jButton51 = null;private JPanel jPanel1 = null;private JPanel jContentPane1 = null;private String str=; private doub

47、le dataone;private char Operator=A;private boolean pointIsTyped=false;private JMenuBar jJMenuBar = null;private JMenu jMenu = null;private JMenuItem jMenuItem = null;private JMenuItem jMenuItem1 = null;private JMenu jMenu1 = null;private JMenuItem jMenuItem3 = null;private JMenuItem jMenuItem4 = nul

48、l;private JMenu jMenu2 = null;private JMenuItem jMenuItem5 = null;private JMenuItem jMenuItem6 = null;private JMenuItem jMenuItem7 = null;private JMenuItem jMenuItem8 = null;DecimalFormat df;/保留小数位数private JButton getJButton() if (jButton = null) jButton = new JButton();jButton.setText(9);jButton.se

49、tFont(new Font(楷体, Font.BOLD, 30);jButton.setForeground(new Color(250,0,0); /红色、绿色和蓝色jButton.setFocusable(false);jButton.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) str+=9;jTextField.setText(str););/单击后变色jButton.addMouseListener(new MouseListener()public void ac

50、tionPerformed(MouseEvent e) jButton.setForeground(new Color(0,100,0);public void mouseClicked(MouseEvent e) jButton.setForeground(new Color(0,150,100);public void mouseEntered(MouseEvent e) jButton.setForeground(new Color(0,0,250);public void mouseExited(MouseEvent e) jButton.setForeground(new Color

51、(250,0,0);public void mousePressed(MouseEvent e) jButton.setForeground(new Color(0,250,0);public void mouseReleased(MouseEvent e) jButton.setForeground(new Color(250,250,0););return jButton;private JButton getJButton1() if (jButton1 = null) jButton1 = new JButton();jButton1.setText(/);jButton1.setFo

52、nt(new Font(楷体, Font.BOLD, 30);jButton1.setForeground(new Color(0,150,100);jButton1.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) str=jTextField.getText();Operator=/;dataone=Double.parseDouble(str);str=;jTextField.setText(str););return jButton1;private JButton get

53、JButton2() if (jButton2 = null) jButton2 = new JButton(sqrt);jButton2.setFont(new Font(楷体, Font.BOLD, 30);jButton2.setForeground(new Color(0,0,200); jButton2.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) double a=Double.parseDouble(jTextField.getText();double b;if

54、(a=0&e.getKeyChar()=9)str+=e.getKeyChar();jTextField.setText(str);else if(e.getKeyChar()=KeyEvent.VK_BACK_SPACE)str=str.substring(0, str.length()-1);jTextField.setText(str);else if(e.getKeyChar()=KeyEvent.VK_ESCAPE)str=;jTextField.setText(str););return jTextField;private JButton getJButton20() if (j

55、Button20 = null) jButton20 = new JButton();jButton20.setText(MC);jButton20.setFont(new Font(楷体, Font.BOLD, 25);jButton20.setForeground(new Color(0,150,250);jButton20.setBounds(new Rectangle(5, 85, 80, 40);jButton20.addActionListener(this);return jButton20;private JButton getJButton21() if (jButton21

56、 = null) jButton21 = new JButton();jButton21.setText(MR);jButton21.setFont(new Font(楷体, Font.BOLD, 25);jButton21.setForeground(new Color(0,150,250);jButton21.setBounds(new Rectangle(5, 125, 80, 40);jButton21.addActionListener(this);return jButton21;private JButton getJButton22() if (jButton22 = null

57、) jButton22 = new JButton();jButton22.setText(MS);jButton22.setFont(new Font(楷体, Font.BOLD, 25);jButton22.setForeground(new Color(0,150,250);jButton22.setBounds(new Rectangle(5, 165, 80, 40);jButton22.addActionListener(this);return jButton22;private JButton getJButton23() if (jButton23 = null) jButt

58、on23 = new JButton();jButton23.setText(M+);jButton23.setFont(new Font(楷体, Font.BOLD, 25);jButton23.setForeground(new Color(0,150,250);jButton23.setBounds(new Rectangle(5, 205, 80, 40);jButton23.addActionListener(this);return jButton23;private JButton getJButton24() if (jButton24 = null) jButton24 =

59、new JButton();jButton24.setText(Backspace);/退格键jButton24.setFont(new Font(楷体, Font.BOLD, 30);jButton24.setForeground(new Color(0,150,250);jButton24.setBounds(new Rectangle(70, 40, 195, 40);jButton24.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) if(str.length()!=0)

60、str=str.substring(0, str.length()-1);jTextField.setText(str););return jButton24;private JButton getJButton25() if (jButton25 = null) jButton25 = new JButton();jButton25.setText(CE);jButton25.setFont(new Font(楷体, Font.BOLD, 30);jButton25.setForeground(new Color(0,150,250);jButton25.setBounds(new Rect

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论