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

下载本文档

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

文档简介

1、青岛理工大学琴岛学院设计报告课题名称:简单计算器的使用学院:青岛理工大学琴岛学院专业班级:计算机使用技术 092班学 号:20090311023学 生:刘书腾指导教师:代学卿、马金霞青岛理工大学琴岛学院教务处2011 年7月7日学生刘书腾指导教师代学卿、马金霞课题名称简单计算器的使用设计时间设计地点图书馆506设计目的一、课题介绍1、课题要求(1) 使用图形用户界面:一个文本框;0-9数字按钮;加、减、乘、除运算 符;“等于”符号;复位按钮;(2) 完成整数、实数的四则运算(加、减、乘、除);(3) 通过按钮点击实现数据的复位(清零);(4) 实数运算中小数位的精度一致。2、课题设计思想对于此

2、计算器程序,首先要设计其 GUI界面,总体界面有一个文本框,18 个按钮,总体界面用 BorderLayout布局。文本框放置在最NORT,然后0到9以及+,-,*,/的按钮放置到一个面 板Panel中,添加到整体布局的CENTEJR界面设计完成。布局设计好后再添加按钮事件。对于此程序要考虑到点击加、减、乘、除 按钮时是否有点击数字按钮,如果是第一次点击数字按钮或者是点击数字按钮 前点击了加、减、乘、除按钮则直接把数字按钮的数值设置到文本框中,否则 则应把文本框中的内容加上你所点击按钮的数值设置到文本框中。这是计算器中的一种:简单计算器,本项目用到了Java中的GUI界面和swing组件以及a

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

4、、菜单项、按钮、文本框、容器,设置为private类型。定义变量double memoryd;/使用内存 中存储的数字;DecimalFormat df;/ 保留小数位数。使用 private JButton getJButt on()方法添加按钮并给按钮命名,使用setFo nt( new Fon t(" 楷体",Fon t.BOLD, 30);setForegrou nd(new Color(250,0,0);方法设置按钮的字体和字体颜色。设置数字按钮1到9并添加监控,使其在发生鼠标事件时改变按钮颜色, 其图形 界面如下图1-1所示:图1-12、详细设计根据课题设计的具

5、体要求画出如下图所示的流程图:开始"主界面"运算符号运H数擔(1) 这段代码主要是对程序的主框架进行相应的设置Frame f=new Frame('计算器");f.setBackgro un d(Color.lightGray); f.setForegro un d(Color.blue); f.add(p1,BorderLayout.NORTH); f.add(p2,BorderLayout.CENTER);f.add(p3,BorderLayout.SOUTH);f.setSize(350,300);/设 置大小f.setVisible(true);/

6、 设置为可视(2) 设置数字按钮1到9并添加监控,使其在发生鼠标事件时改变按钮颜色addMouseListe ner(new MouseListe ner()public void actio nPerformed(MouseEve nt e) jButton.setForeground(new Color(0,100,0);public void mouseClicked(MouseEve nt e) jButton.setForeground(new Color(0,150,100);public void mouseE ntered(MouseEve nt e) jButton.setF

7、oreground(new Color(0,0,250);public void mouseExited(MouseEve nt e) jButton.setForeground(new Color(250,0,0);public void mousePressed(MouseEve nt e) jButton.setForeground(new Color(0,250,0); public void mouseReleased(MouseEve nt e) jButto n.setForegrou nd(n ew Color(250,250,0););(3) 在基本的运算中重点介绍一下除法运

8、算 jButton3 = new JButton("x/y");定义 double变量c用来存放从除数文本框中读出的数据,设置 if els语句来判断 当c=0时在文本框中输出“除数不能等于 0”否则就输出结果jButt on 3.addActio nListe ner(new Actio nListe ner() public void actio nPerformed(Actio nEve nt e) double c=Double.parseDouble(jTextField.getText();double d=Double.parseDouble(jTextFie

9、ld.getText();double a;if(c=0)jTextField.setText("除数不能等于 0");elsea=d/c; jTextField.setText(Double.toStri ng(d););(4) 这段代码主要为窗口关闭按钮编写程序class closeWi n exte nds Win dowAdapter /为关闭按钮编写程序public void wi ndowClosi ng(Wi ndowEve nt e) System.exit(0);三、程序的调试和运行结果说明,下面列举几种特殊情况下的具体操作 事例1:当除数为0时,程序运行

10、结果如图1-3 :图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程

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

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

15、s XP Professio nal CPU Intel Pentium 4 3.06GHz内存:512 M四、设计场所4306教室自己笔记本五、设计过程(设计内容及主要模块,不少于 3000字)1 设计要求1)标准计算器:加、减、乘、除、求平方根;2)科学计算器:进制转换、求解三角函数、对数运算、阶乘;3)一元二次方程:求一元二次方程的解;4)勾股定理:求直角三角边长。2 总体设计图1功能模块图2) 一元二次方程界面图科学计算器界面,如图 2图2 一兀二次方程界面图3)标准计算器界面,如图3蝙辑查看粘jb(H)0Backspace ,CECMC1/x91MRsqrt456*MS%123M+I

16、 +/-=+图3标准计算器界面图4)勾股定理科学计算器界面图,如图 4图4勾股定理界面图5)科学计算器界面图,如图5冏计算莊匚|回区編EJ 查看C VJ 解肋0Backspace 1_CE_ IC 二MC1/x789/MRsqrt456*MS%123M+,+/-I iL0二+4、"八戈sincosirJ *x_!_i.rpUtan弧度八进制xA2xA3二进制xAyn!piInIog10fD图4科学计算器界面图3详细设计1)流程图,如图62) 设置窗体窗体名称 biaozhun 继承 JFrame类和 ActionListener 接口,并实现 public void actio nP

17、eformed(Actio nEve nt e) 方法。3) 定义菜单、菜单条、菜单项、按钮、文本框、容器,设置为private类型。4) 定义变量double memoryd;/使用内存中存储的数字;DecimalFormat df;保留小数位数。5) 使用private JButton getJButton()方法添加按钮并给按钮命名,使用setFo nt(n ew Fon t(" 楷体",Fon t.BOLD, 30);setForegro un d( new Color(250,0,0);方法设置按钮的字体和字体颜色。6) 设置数字按钮1到9并添加监控,使其在发生鼠

18、标事件时改变按钮颜色addMouseListe ner(new MouseListe ner()public void action Performed(MouseEve nt e) jButto n.setForegrou nd(new Color(0,100,0);public void mouseClicked(MouseEve nt e) jButton.setForeground(new Color(0,150,100);public void mouseE ntered(MouseEve nt e) jButto n.setForegrou nd(new Color(0,0,250

19、);public void mouseExited(MouseEve nt e) jButto n.setForegrou nd(new Color(250,0,0);public void mousePressed(MouseEve nt e) jButto n.setForegrou nd(new Color(0,250,0);public void mouseReleased(MouseEve nt e) jButto n.setForegrou nd( new Color(250,250,0););7) 开根号运算,定义jButton2 = new JButton("sqrt

20、");对其设置监控,调用Math.sqrt()方法来实现开根号运算,并在文本框中输出结果,jButt on 2.addActio nListe ner(new Actio nListe ner() public void action Performed(Act ion Eve nt e) double a=Double.parseDouble(jTextField.getText();double b;if(a<0)jTextField.setText("负数不能开平方"); elseb=Math.sqrt(a);jTextField.setText(Do

21、uble.toStri ng(b););8) 设置百分比按钮,jButton7 = new JButton("%");使用变量i1来存放从文本框中读出的数据并转换成 double类型,定义double类型变量z1,z1=i1/100 实现求百分比运算,在使用 jTextField.setText(Double.toStri ng(z1)使其在文本框中输出结果jButt on 7.addActio nListe ner(new Actio nListe ner() public void action Performed(Act ion Eve nt e) double i1

22、=Double.parseDouble(jTextField.getText();double z1=i1/100;jTextField.setText(Double.toStri ng(z1); );9) 设置求倒数运算,jButton 14 = new JButton("1/x"); 定义 double 变量 c 用 来存放从文本框中读出的数据,设置if else语句来判断当c=0时在文本 框中输出“除数不能等于0”否则就输出结果jButt on 14.addActio nListe ner(new Actio nListe ner() public void acti

23、on Performed(Act ion Eve nt e) double c=Double.parseDouble(jTextField.getText();double d;if(c=0)jTextField.setText("除数不能等于 0");elsed=1/c; jTextField.setText(Double.toStri ng(d););10) 定义相反数按钮,jButto n16 = new JButto n("+/-");通过使用0-Double.parseDouble(jTextField.getText().trim();使文本

24、框中的数据变成其相反数jButt on 16.addActio nListe ner(new Actio nListe ner() public void acti on Performed(Act ion Eve nt e) double i2=0-Double.parseDouble(jTextField.getText().trim();jTextField.setText(Double.toStri ng(i2););11) 等于号按钮,jButton 19.setText("=");通过使用switch case语句来控制,Operator变量在定义+、-、*、/

25、按钮时对其赋值jButt on 19.addActio nListe ner(new Actio nListe ner() public void action Performed(Act ion Eve nt e) double datatwo;datatwo=Double.parseDouble(str);switch(Operator)case'+':data on e+=datatwo;break;case'-':data on e-=datatwo;break;case'*':data on e*=datatwo;break;case&

26、#39;/':data on e/=datatwo;break;default:break;str=Double.toStri ng(data on e);jTextField.setText(str););12) 定义文本框textMemory,用来显示进行MS M操作时显示M用,使用textMemory.setEditable(false); 方法使 textMemory 文本框变成不可编辑。13) 定义文本框jTextField,用来显示运算结果jTextField.addKeyListe ner(new KeyAdapter() public void keyTyped(Key

27、Eve nt e) if(e.getKeyChar()>='O'&&e.getKeyChar()<='9')str+=e.getKeyChar();jTextField.setText(str);else if(e.getKeyChar()=KeyEve nt.VK_BACK_SPACE)str=str.substring(0, str.length()-1);jTextField.setText(str);else if(e.getKeyChar()=KeyEve nt.VK_ESCAPE)str=""jText

28、Field.setText(str););14) 定义 jButton20、jButton21、jButton22、jButton23 分别为 MC MR MSM+并且对按钮添加监听,计算器内部有一个存贮器,假设将其称为“寄数器”。MS是将当前窗口数据写入“寄数器”,M+是将当前窗口数据和“寄数器”内的数据相加后再存入“寄数器”,MF是读出“寄数器”内的数据到窗口,MC是清除“寄 数器”内的数据,使其为 0。按钮实现方法在 public void actionPerformed(Actio nEve nt e)中实现,public void action Performed(Acti onEv

29、ent 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) /textMemory 显示 m 的文本框 boolea n isDot = false;textMemory.setText(” M&

30、quot;);textMemory.setFont(new Font("楷体",Font.BOLD, 30); for (int i = 0; i < jTextField.getText ().len gth(); i+)if ('.' = jTextField.getText().charAt(i) isDot = true;break;如果是double,则存入 memoryd(double存储器)if (isDot = true) memoryd = Double.parseDouble(jTextField.getText();memoryi

31、 = 0; /保证存储器中存放最新的值/如果是int,则存入 memoryi(int存储器)else memoryi = In teger.parseI nt(jTextField.getText();memoryd = 0; /保证存储器中存放最新的值/'MR'的操作,将存储器中的信息输出if (temp = jButto n21) if (memoryd != 0)jTextField.setText(Double.toStri ng(memoryd);if (memoryi != 0)jTextField.setText(I nteger.toStri ng(memory

32、i); 'M+'的功能,将当前文本框里的数据和存储器中数据相加后,再存入存储器if (temp = jButton23) textMemory.setText(" M ");textMemory.setFont(new Font("楷体", Font.BOLD, 30); boolea n isDot = false;for (i nt i = 0; i < jTextField.getText ().len gth(); i+)if ('.' = jTextField.getText().charAt(i) isD

33、ot = true;break; if (memoryi != 0) /存储中是一个int型数if (isDot = false) / 被加数是一个 int 型数memoryi += In teger.parseI nt(jTextField.getText();else /被加数是一个double型数,则将int存储器中数传入double存储器和当前数相加,int存储 器清零memoryd = memoryi + Double.parseDouble(jTextField.getText();memoryi = 0;elsememoryd += Double.parseDouble(jTex

34、tField.getText(); 15) 设置退格按钮backspace,为jButton24 添加监控 ActionListener,通过引用全局变量str ,str为string 类型的变量jButt on 24.addActio nListe ner(new Actio nListe ner() public void action Performed(Act ion Eve nt e) if(stre ngth()!=O) str=str.substri ng(0, str.le ngth()-1);jTextField.setText(str););16) 设置清空按钮C,添加监控

35、,在单击C时通过改变全局变量str的值来实现 功能,单击时就将str的值赋为空,文本框jTextField 通过调用setText将str的值输出。jButt on 26.addActio nListe ner(new Actio nListe ner() public void action Performed(Act ion Eve nt e) str="" jTextField.setText(str););17) 添加菜单条jJMenuBar,在jJMenuBar中通过add来添加获取菜单的方法 getJMe nu,以此将菜单添加到菜单条中。菜单分别为编辑、查看、帮

36、助。这三个 菜单分别在其对应的getJMenu()方法中定义,编辑菜单下定义了菜单项复制和 黏贴,查看菜单下定义了标准型、科学型、勾股定理、解一元二次方程四个菜单 项,标准型通过 jMenultem4.addActionListener(new ActionListener() public void action Performed(Acti onEvent e) df=new DecimalFormat("#.#"); 保留 15 位小数biaozhun.this.setBounds(400, 200, 600, 590);biaozh un .this.setJMe

37、nuBar(getJJMe nuBar();biaozhun.this.setContentPane(getJContentPane1();将 jContentPane1 面板添加到 jFrame 框架上biaozhun.this.setTitle("计算器");Image image=biaozhun.this.getToolkit().getImage("计算器图标.jpg");biaozhu n. this.setIc on Image(image);biaozh un .this.setVisible(true);jTextField.addAc

38、ti on Liste ner(this););方法来实现窗体之间切换。setBounds()方法实现窗体的显示位置和窗体大小,setVisible() 将其设置为true使其变为可见。使用相同的方法实现窗体之间相互切换,其中标准型和科 学型在同一个窗体中,通过改变窗体大小和窗体添加控件来实现标准型和科学型 两种计算器所需要的按钮。勾股定理、解一元二次方程通过改变setVisible()的值为true和false来实现窗体切换。帮助菜单下添加帮助主题和关于计算器 选项,当单击帮助主题时就打开系统中关于计算器的帮助文件,单击关于计算器时就会打开一个窗体显示关于计算器的内容,当单击确定按钮时就会关

39、闭关于计 算器窗体。18) 定义JPanel类型的变量jPanel、jContentPane,在容器jPanel中添加标准 计算器的右下角的按钮,jContentPane中添加退格、清除、MS MR MC M+按 钮,jPanel 在方法 getJPanel()中,jContentPane 在方法 getJContentPane() 中,窗体通过 this.setJMenuBar(getJJMenuBar();this.setContentPane(getJCo nten tPa ne();将控件添加到窗体中。19) 定义进制转换按钮,jButton31、jButton34、jButton37

40、、jButton40 分别为十六进制、十进制、八进制、二进制,通过调用 In teger.toHexStri ng( n) 十六 进制、Integer.toOctalString(n)八进制、Integer.toBinaryString(n)二进制来实现进制之间的相互转换。20) 定义三角函数sin、cos、tan但是在使用需要先调用弧度按钮,将相应的角度转换成弧度以后在使用三角函数对应的按钮才可以实现求三角函数的值。求 弧度方法在定义弧度按钮时实现,stri ng.valueOf(i/180*Math.PI)求对应的弧度sin、cos、tan 使用 math中的方法。21) 定义阶乘按钮jB

41、utton42,实现求阶乘方法,jButt on 42.addActio nListe ner(new Actio nListe ner() public void action Performed(Act ion Eve nt e) double i=Double.parseDouble(jTextField.getText();if(i%2=0)|(i%2=1)判断为整数进行阶乘操作int j=(int)i;强制类型转换int result=1; for(i nt k=1;k<=j;k+) result *=k; jTextField.setText(Stri ng.valueOf(

42、result););22) 定义 pi 按钮,直接调用 Math.PI,通过 jTextField.setText(String.valueOf (Math.PI);在窗体中显示pi值。23) 定义log10按钮,用来求log以10为底的对数值,当对数值i大于0时就调 用Math.log10(i)来输出结果,当i小于0时就在文本框中显示负数不能求对 数!。jButt on 45.addActio nListe ner(new Actio nListe ner() public void action Performed(Acti onEvent e) double i=Double.parse

43、Double(jTextField.getText();if(i>0) jTextField.setText(Stri ng.valueOf(df.format(Math.log10(i);else jTextField.setText(” 负数不能求对数!"););24) 定义ln按钮,方法调用Math.log1p(i),当对数值i大于0时就调用Math.ln(i)来输出结果,当i小于0时就在文本框中显示负数不能求对数!。jButt on4 4.addActio nListe ner(new Actio nListe ner() public void action Perf

44、ormed(Act ionEvent e) double i=Double.parseDouble(jTextField.getText();if(i>0) jTextField.setText(Stri ng.valueOf(df.format(Math.l n( i);elsejTextField.setText("负数不能求对数!"););25) 将科学计算器按钮添加到jPanel1中,通过getJPanel1()方法返回jPanel1 ,再定义jContentPane1,将jPanell、按钮、文本框添加到jContentPane1中, 通过调用 getJCo

45、ntentPane1()返回 jContentPane1,窗体通过调用 this.set Con te ntPa ne(getJCo nten tPa ne1();在窗体中显示出相对应的按钮。26) 书写主函数biaozh un thisClass = new biaozhu n();thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 关闭窗口 thisClass.setVisible(true);27) 在定义三个窗体gougudingli、guanyujisuanqi2、一元二次方程用来在调用 时使用。28) 设置标题栏的图标

46、Image image=biaozhun. this.getToolkit().getlmage(” 计算器图标.jpg");biaozhun.this.setIconlmage(image);使用getImage()方法返回此图标的image并赋给image,通过this来调用 setIco nlmage(imager) 方法来改变窗体标题栏上的图标六、设计中用到的课程知识点Java语言程序设计:1. 布局管理器: borderLayout、gridLayout、setLayout ;2. 组件:JFrame JPanel、JButton、JTextField、JMenuBa、JM

47、enu JMenultem3. 图形用户界面;4. 类的继承、接口的继承;5. 监听器的使用;6. Math方法的使用;7. 强制类型转换;七、设计中遇到的问题及解决方法1. 设置计算器MR MG MS M+寸遇到问题,开始不知道怎么去实现,后来通过 上网查找相关代码得以解决,设置 double memoryd和int memoryi来使用内存中的 数据。2. 进制转换的实现,进制转换的功能没有完全实现,通过调用Integer.toHexString(n)十六进制、Integer.toOctalString(n)八进制、Integer.toBinaryString(n)二进制可以将数字转换成对

48、应的进制类型,但是没有实现从十六进制转换 成十进制。3. 在按钮添加监控事件时出现问题,例如 addActio nListe ner( new Action Liste ner() public void acti on Performed(Act ion Eve nt e) )女口果在方法体中书写 if(e.getSource()=jMenultem5)就会出现错误,必须是在 public voidactio nPerformed(Actio nEve nt e)方法体中实现方法。4. 在科学型和标准型计算器之间的窗体转换出现问题,对响应的菜单项添加监 控和响应的按钮添加到容器以后,可以实现

49、从标准型转换到科学型,但是当单击标 准型按钮以后却无法将窗体转换到标准型,只能显示标准型的窗体,但是在窗体中却没有按钮和文本框,通过改变相对应的容器进行改进。5在设置一元二次方程窗体时,单击计算按钮时却没有在文本框中输出对应的结果,但是对按钮和文本框都添加了addActio nListe ner(this),而且在算法的编写中也没有出现错误,原因是在文本框中数据读出和写入时类型转换出现错误。6. 在改变窗体上的图标时出现错误,显示图标的语句并没有出现错误,而且也导入了相关的 image 包, Image image=this.getToolkit().getlmage(”计算器图标.jpg&q

50、uot;);this.setIco nImage(image);后来更改图片的后缀就可以显示图片了,将后缀gif改为jpg就可以。7. 在标准计算器中显示关于计算器窗体时,单击确定按钮关闭关于计算器窗体 时需要单击两次确定按钮才可以关闭窗体,显示标准计算器窗体。八、程序清单1 标准计算器和科学计算器代码import javax.swi ng.*;import java.awt.*;import java.awt.eve nt.*;import java.text.DecimalFormat;public class biaozh un exte nds JFrame impleme nts A

51、ction Liste ner private static fin al l ong serialVersio nUID = 1L;private JPa nel jC onten tPa ne = n ull;private JPa nel jPa nel = n ull;private JButt on jButton = n ull;private JButt on jButt on1 =null;private JButt on jButt on2 =null;private JButt on jButt on3 =null;private JButt on jButt on4 =n

52、ull;private JButt on jButt on5 =null;private JButt on jButt on6 =null;private JButt on jButt on7 =null;private JButt on jButt on8 =null;private JButt on jButt on9 =null;private JButton jButto n10nullprivate JButton jButto n11nullprivate JButton jButto n12nullprivate JButton jButto n13nullprivate JBu

53、tton jButto n14nullprivate JButton jButto n15nullprivate JButton jButto n16nullprivate JButton jButto n17nullprivate JButton jButto n18nullprivate JButton jButto n19nullprivate JTextField jTextField = nu II;private JTextField textMemory=null;/作为输入M用private JButton jButt on20n ull;private JButton jBu

54、tto n21n ull;private JButton jButto n22n ull;private JButton jButt on23n ull;private JButton jButt on24n ull;private JButt on jButt on25n ull;private JButton jButt on26n ull;double memoryd; /使用内仔中仔储的数子int memoryi;/科学计算器按钮private JButton jButto n31nullprivate JButton jButto n32nullprivate JButton jBu

55、tto n33nullprivate JButton jButto n34nullprivate JButt on jButt on35nullprivate JButton jButto n36nullprivate JButton jButto n37nullprivate JButton jButto n38nullprivate JButton jButto n39nullprivate JButton jButt on40nullprivate JButton jButto n41nullprivate JButton jButt on42nullprivate JButton jButt on43nullprivate JButton jButto n44nullprivate JButt on jButt on45 = n ull;A-Fprivate JButton jButt on46 = null;private JButton jButt on47 = null;private JButton jButt on48 = null;private JBut

温馨提示

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

评论

0/150

提交评论