第一个小应用———Java计算器
来源:互联网 发布:精品电玩手游刷分软件 编辑:程序博客网 时间:2024/05/22 15:10
/***第一步:建立计算器的界面*第二步:创建按钮监听:分成数字按钮监听和运算符监听*第三步:创建calculator类,进行数字运算*/public class Calculator extends JFrame{ private JPanel Panel; private JTextField textField; private String lastCommand; private double result; private boolean start; public static void main(String[] args) { Calculator frame = new Calculator(); frame.setTitle("第一台计算器"); frame.setSize(220,230); frame.setResizable(false); frame.setDefaultCloseOperation(EXIT_ON_CLOSE); frame.setVisible(true); } public Calculator() { result = 0; lastCommand = "="; start = true; // TODO Auto-generated constructor stu setLayout(new BorderLayout()); textField = new JTextField("请输入数字计算");//初始化文本框 textField.setSize(20,20); textField.setEnabled(false);//setEnabled(false)是使你的textField处于不可更改状态,值为true的时候是可更改的(也是默认的) add(textField,BorderLayout.NORTH); Panel = new JPanel(); Panel.setLayout(new GridLayout(4, 4)); InsertAction insert = new InsertAction();//初始化数字监听事件 CommandAction command = new CommandAction();//初始化运算符监听事件 addButton("7",insert);//进入数字按钮的监听事件 addButton("8",insert); addButton("9",insert); addButton("/",command);//进入运算符按钮的监听事件 addButton("4",insert); addButton("5",insert); addButton("6",insert); addButton("*",command); addButton("1",insert); addButton("2",insert); addButton("3",insert); addButton("-",command); addButton("0",insert); addButton(".",insert); addButton("=",command); addButton("+",command); add(Panel, BorderLayout.CENTER); } private void addButton(String lable ,ActionListener actionListener){ JButton button = new JButton(lable); button.addActionListener(actionListener); Panel.add(button); } private class InsertAction implements ActionListener{ @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub String input = e.getActionCommand();//e.getActionCommand()方法返回String,通过这个String判断是哪个按钮触发了事件 if(start){ textField.setText(""); start = false; } textField.setText(textField.getText()+input); } } private class CommandAction implements ActionListener{ @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub String command = e.getActionCommand(); if(start){ if(command.equals("*")){ textField.setText(command); start = false; }else{ lastCommand = command; } } else{ calculator(Double.parseDouble(textField.getText())); lastCommand = command; start = true; } } } //运算并输出结果 public void calculator(double x) { if(lastCommand.equals("+"))result+=x; else if(lastCommand.equals("-"))result-=x; else if(lastCommand.equals("*"))result*=x; else if(lastCommand.equals("/"))result/=x; else if(lastCommand.equals("="))result=x; textField.setText(""+result); }}
阅读全文
0 0
- 第一个小应用———Java计算器
- C#winform第一个小程序——简易计算器
- 计算器——第一个Android小项目
- 第一个ios简单应用——加法计算器
- 第一个Android项目——计算器
- 第一个Android程序——计算器
- android:人品计算器—第一个demo
- 第一个iOS应用——泽化计算器(ZiwerCounter)
- 第一个上线的小应用——手电筒
- C#初学者——第一个window 应用小程序
- Android入门——第一个小应用
- 小白Java笔记——第一个Java程序
- 第一个小应用
- 自学安卓的第一个小小小App——计算器,希望前辈们多多指点
- 第一个android程序——贷款计算器
- Android——我的第一个APP,乘法计算器
- 我的第一个Android Application——计算器
- 四舍五入计算器,第一个python—gui程序
- bzoj2620[Usaco2012 Mar]Haybale Restacking
- 探索关系抽取中的多变知识
- 模拟——洛谷P1185 绘制二叉树
- SCU-4396 麦野沉利与御坂美琴的战斗
- python开发传统蒙古文OCR(一)
- 第一个小应用———Java计算器
- 使用IDEA在Spring Boot中集成JSP
- 13期 6月期刊自荐
- linux(三)帮助命令
- UESTC 1633 去年春恨却来时,落花人独立,微雨燕双飞 Dijkstra+构造
- 微信小程序 | 多个按钮或VIEW,点击改变状态 简易的实现方法
- 1554 Class for Time
- Mybatis架构
- Java:如何在命令行输入数据