《程序语言综合课程设计》实验报告 - 图文(7)

2019-08-01 23:36

计算机2011级 程序语言综合课程设计

附录

A.1 题目一关键源码

(1) 类的CalculatorWindow方法 import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.border.*; import java.util.LinkedList; import java.io.*; import java.lang.Object;

public class CalculatorWindow extends JFrame implements ActionListener{ NumberButton numberButton[]; OperationButton operationButton[];

JButton 小数点操作,正负号操作,退格操作,等号操作,清零操作,sin,cos,tan,log,exp,off; JMenuBar bar; JMenu help,view;

JMenuItem about,exit,information;

JTextField resultShow; //显示计算结果 JTextField showComputerProcess; //显示当前计算过程 JTextArea saveComputerProcess; //显示计算步骤 JButton saveButton,copyButton,clearButton;

LinkedList list; //链表用来存放第一个运算数、运算符号和第二个运算数

HandleDigit handleDigit; //负责处理ActionEvent事件 HandleOperation handleOperation ; HandleBack handleBack; HandleClear handleClear; HandleEquality handleEquality;

28

计算机2011级 程序语言综合课程设计

HandleDot handleDot; HandlePOrN handlePOrN; HandleSin handleSin; HandleCos handleCos; HandleTan handleTan; HandleLog handleLog; HandleExp handleExp; HandleOff handleOff; public CalculatorWindow(){ setTitle(\计算器\

JPanel panelLeft,panelRight; list=new LinkedList(); resultShow=new JTextField(10);

resultShow.setHorizontalAlignment(JTextField.RIGHT); resultShow.setForeground(Color.blue);

resultShow.setFont(new Font(\ resultShow.setBorder(new SoftBevelBorder(BevelBorder.LOWERED)); resultShow.setEditable(false);

resultShow.setBackground(Color.white); showComputerProcess=new JTextField();

showComputerProcess.setHorizontalAlignment(JTextField.CENTER); showComputerProcess.setFont(new Font(\ showComputerProcess.setBackground(Color.cyan); showComputerProcess.setEditable(false); saveComputerProcess=new JTextArea(); saveComputerProcess.setEditable(false);

saveComputerProcess.setFont(new Font(\宋体\ numberButton=new NumberButton[10];

handleDigit=new HandleDigit(list,resultShow,showComputerProcess); for(int i=0;i<=9;i++){

numberButton[i]=new NumberButton(i);

numberButton[i].setFont(new Font(\ numberButton[i].addActionListener(handleDigit); }

29

计算机2011级 程序语言综合课程设计

operationButton=new OperationButton[4];

handleOperation=new HandleOperation(list,resultShow,

showComputerProcess,saveComputerProcess); String 运算符号[]={\ for(int i=0;i<4;i++){

operationButton[i]=new OperationButton(运算符号[i]); operationButton[i].setFont(new Font(\ operationButton[i].addActionListener(handleOperation); }

bar=new JMenuBar(); help=new JMenu(\帮助\ view=new JMenu(\查看\ about=new JMenuItem(\关于\ exit=new JMenuItem(\退出\ help.add(about); view.add(exit); bar.add(help); bar.add(view); setJMenuBar(bar);

exit.addActionListener(this); about.addActionListener(this); 小数点操作=new JButton(\

handleDot=new HandleDot(list,resultShow,showComputerProcess); 小数点操作.addActionListener(handleDot); 正负号操作=new JButton(\

handlePOrN=new HandlePOrN(list,resultShow,showComputerProcess); 正负号操作.addActionListener(handlePOrN); 等号操作=new JButton(\

handleEquality=new HandleEquality(list,resultShow, showComputerProcess,saveComputerProcess); 等号操作.addActionListener(handleEquality); sin=new JButton(\

handleSin=new HandleSin(list,resultShow,

30

计算机2011级 程序语言综合课程设计

showComputerProcess,saveComputerProcess); sin.addActionListener(handleSin); cos=new JButton(\

handleCos=new HandleCos(list,resultShow,

showComputerProcess,saveComputerProcess); cos.addActionListener(handleCos); tan=new JButton(\

handleTan=new HandleTan(list,resultShow,

showComputerProcess,saveComputerProcess); tan.addActionListener(handleTan); log=new JButton(\

handleLog=new HandleLog(list,resultShow,

showComputerProcess,saveComputerProcess); log.addActionListener(handleLog); off=new JButton(\

handleOff=new HandleOff(list,resultShow,showComputerProcess); off.addActionListener(handleOff); exp=new JButton(\

handleExp=new HandleExp(list,resultShow,

showComputerProcess,saveComputerProcess); exp.addActionListener(handleExp); 退格操作=new JButton(\退格\

handleBack=new HandleBack(list,resultShow,showComputerProcess); 退格操作.addActionListener(handleBack); 清零操作=new JButton(\

handleClear=new HandleClear(list,resultShow,showComputerProcess); 清零操作.addActionListener(handleClear); 清零操作.setForeground(Color.red); 退格操作.setForeground(Color.red); 等号操作.setForeground(Color.red); sin.setForeground(Color.blue); cos.setForeground(Color.blue); tan.setForeground(Color.blue); log.setForeground(Color.blue);

31

计算机2011级 程序语言综合课程设计

exp.setForeground(Color.blue); 正负号操作.setForeground(Color.blue); 小数点操作.setForeground(Color.blue); panelLeft=new JPanel(); panelRight=new JPanel();

panelLeft.setLayout(new BorderLayout()); JPanel centerInLeft=new JPanel();

panelLeft.add(resultShow,BorderLayout.NORTH); panelLeft.add(centerInLeft,BorderLayout.CENTER); centerInLeft.setLayout(new GridLayout(5,5)); centerInLeft.add(numberButton[1]); centerInLeft.add(numberButton[2]); centerInLeft.add(numberButton[3]); centerInLeft.add(operationButton[0]); centerInLeft.add(off);

centerInLeft.add(numberButton[4]); centerInLeft.add(numberButton[5]); centerInLeft.add(numberButton[6]); centerInLeft.add(operationButton[1]); centerInLeft.add(退格操作); centerInLeft.add(numberButton[7]); centerInLeft.add(numberButton[8]); centerInLeft.add(numberButton[9]); centerInLeft.add(operationButton[2]); centerInLeft.add(清零操作); centerInLeft.add(numberButton[0]); centerInLeft.add(小数点操作); centerInLeft.add(正负号操作); centerInLeft.add(operationButton[3]); centerInLeft.add(等号操作); centerInLeft.add(sin); centerInLeft.add(cos); centerInLeft.add(tan); centerInLeft.add(log);

32


《程序语言综合课程设计》实验报告 - 图文(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:“坚守”作文讲评打印版

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: