写了一个简单的小计算器,带历史记录

package myCalculator;import java.awt.*;import javax.swing.*;import java.awt.event.*;public class Calculator extends JFrame implements ActionListener{//*****************全局变量********************JTextField jtf=new JTextField(21);//显示区初始显示0,长度40boolean flagjtf=true;//是否是0float result;//结果存放int calnum=1;//次数String caltext="";//存放要显示的字符enum Suanfa{jia,jian,cheng,chu};Suanfa suanfa=null;//标记是哪种算法Suanfa lastsuanfa=null;//上一次的算法JTextArea jta=new JTextArea("历史记录:\n",9,30);//***************************************** public Calculator(){//*****************初始设置********************Container dingceng=getContentPane();//定义顶层容器setLayout(new BorderLayout());//新建管理器//panelJPanel pxs=new JPanel();JPanel phistory=new JPanel();JPanel pall=new JPanel();GridBagLayout allgb=new GridBagLayout();pall.setLayout(allgb);GridBagConstraints call=new GridBagConstraints(); jtf.setHorizontalAlignment(JTextField.RIGHT);//右对齐 jtf.setText("0"); pxs.add(jtf); phistory.add(jta); JButton bnum0=new JButton("0");JButton bnum1=new JButton("1");JButton bnum2=new JButton("2");JButton bnum3=new JButton("3");JButton bnum4=new JButton("4");JButton bnum5=new JButton("5");JButton bnum6=new JButton("6");JButton bnum7=new JButton("7");JButton bnum8=new JButton("8");JButton bnum9=new JButton("9");JButton bdot=new JButton(".");JButton bequ=new JButton("=");JButton bjia=new JButton("+");JButton bjian=new JButton("-");JButton bcheng=new JButton("×");JButton bchu=new JButton("÷");JButton bql=new JButton("C");JButton bce=new JButton("CE");JButton btuige=new JButton("←");JPanel panniu=new JPanel();GridBagLayout lanniu=new GridBagLayout();//新建网格组布局panniu.setLayout(lanniu);GridBagConstraints cons=new GridBagConstraints();cons.fill=GridBagConstraints.BOTH;//有剩余空间,空着cons.weightx=0;cons.weighty=0;//增量域=0cons.gridwidth=1;cons.gridheight=1;//大小cons.insets=new Insets(2,2,2,2); /*位置*/ cons.gridx=0;cons.gridy=0;cons.gridheight=1;cons.gridwidth=1;panniu.add(bnum7,cons);cons.gridx=1;cons.gridy
  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值