《保存计算过程的计算器》由会员分享,可在线阅读,更多相关《保存计算过程的计算器(36页珍藏版)》请在金锄头文库上搜索。
1、保存计算过程的计算器制作人:邝泰鹏 罗强 谢奇2021/6/41主要内容:主要内容:1.设计要求;2.总体要求;3.详细设计;5.代码调试;6.软件发布;7.课程设计题目.2021/6/421.设计要求一:首先这个计算器的定位是一个方便实用的普通计算工具。二:除了具有普通的计算功能外,还具有显示计算过程、保存计算过程之功能。2021/6/43主页面介绍1、单击计算器上的数字按钮可以设置参与计算的运算数。2、单击计算器上的运算按键可以选择运算符号。3、单击计算器上的函数按键可以计算出相应的函数值。4、单击计算器上的等于号显示计算结果。5、在一个文本中显示当前的计算过程,在一个文本区中显示以往的计
2、算过程。6、单击保存按钮可以将文本中的全部计算过程保存到文件;单击复制按钮可以将文本区中的文本复制到剪贴板;单击清除按钮可以清除文本区中的全部内容。2021/6/44总体设计设计计算器时要编写11个Java源文件。需要Java系统提供的一些重要的类。2021/6/4511个Java源文件CalculatorWindow.java,NumberButton.java,OperationButton.java,HandleDigit.java,HandleOperation.java,HandleDot.java,HandlePositiveOrNegative.java,HandleEquali
3、ty.java,HandleSin.java,HandleBack.java和HandleClear.java.2021/6/46计算器所用到的一些重要的类以及之间的组合关系2021/6/47CalculatorWindow.Java(主类主类)CalculatorWindow类负责创建计算器的主窗口,该类含有main方法,计算器从该类开始执行。CalculatorWindow类创建的窗口以及其中的主要成员如下图所示。2021/6/48CalculatorWindow创建的窗口效果如下图2021/6/49CalculatorWindow类的UML图2021/6/410CalculatorWin
4、dow.java的关键代码 NumberButton numberButton; OperationButton operationButton; JButton 小数点操作,正负号操作,退格操作,等号操作,清零操作,sin; JTextField resultShow; /显示计算结果 JTextField showComputerProcess; /显示当前计算过程 JTextArea saveComputerProcess; /显示计算步骤 JButton saveButton,copyButton,clearButton; LinkedList list; /链表用来存放第一个运算数、
5、运算符号和第二个运算数 HandleDigit handleDigit; /负责处理ActionEvent事件 HandleOperation handleOperation ; HandleBack handleBack; HandleClear handleClear; HandleEquality handleEquality; HandleDot handleDot; HandlePOrN handlePOrN; HandleSin handleSin;2021/6/411CalculatorWindow.java的关键代码 handleDigit=new HandleDigit(li
6、st,resultShow,showComputerProcess);for(int i=0;i=9;i+) numberButtoni=new NumberButton(i); numberButtoni.setFont (newFont(Arial,Font.BOLD,20); numberButtoni.addActionListener(handleDigit);/为数字按钮添加监视器。 2021/6/412CalculatorWindow.java的关键代码String 运算符号=+,-,*,/; for(int i=0;i4;i+)operationButtoni=new Oper
7、ationButton(运算符号i);operationButtoni.setFont(new Font(Arial,Font.BOLD,20);operationButtoni.addActionListener(handleOperation);/为运算按钮添加监视器。2021/6/413CalculatorWindow.java的关键代码For(int i=0;i=9;i+) numberButtoni=new NumberButton(i); /为numberButton数组附值,值为按键。 numberButtoni.setFont(new Font(“Arial”,Font.BOL
8、D,20); /设制按键上的字体。 numberButtoni.addActionListenner(handleDigit); /为按键添加监听器。operationButton = new OperationButton4;handleOperation = new HandleOperation(list,resultShow,showComputerProcess, saveComputerProcess); /*该对象是运算符按键的监视器,当用户单击运算符按钮时,HandleOperation类实现的ActionListener接口中的actionPerformed(ActionEv
9、ent)方法.*/String 运算符号=“+”,”-”,”*”,”/”;For(int i = 0;i =1)/判断num的长度是否多于1. num=num.substring(0,num.length()-1); list.set(0,num); resultShow.setText(num); showComputerProcess.setText(+num); /大干或等于1时将删去num中的最后一个元素. else list.removeLast(); resultShow.setText(0); showComputerProcess.setText(0); 2021/6/433H
10、andleClear类该类主要包含清零按钮的监视器。其主要实现的代码是: public void actionPerformed(ActionEvent e) resultShow.setText(0); /列表的结果显示为0. list.clear();/从列表中移除所有元素。 showComputerProcess.setText(null); /列表的结果显示为空. 2021/6/434系统测试打包发布清单文件生成JAR文件mymoon.mfManifest-Version: 1.0Mani-Class: CalculatorWindowCreated-By: 1.2(Sun Microsystem Ins.)jar cfm CalculatorWindow.jar mymoon.mf *.class2021/6/435部分资料从网络收集整理而来,供大家参考,感谢您的关注!