工程名随意,文件名必须为Jisuanqi.java

View Code

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.border.TitledBorder;public class Jisuanqi extends JFrame implements ActionListener{private JTextField reasult;private JButton btn1,btn2,btn3,btn4,btn5,btn6,btn7,btn8,btn9,btn0,btnAC,btnAdd,btnSub,btnReasult,btnD,btnAbout,btnCancel;private boolean add,sub,end,s,c;private String str;private double num1,num2;public Jisuanqi(){JPanel p1=new JPanel();JPanel p2=new JPanel();JPanel p3=new JPanel();TitledBorder tb=new TitledBorder("OutPut");tb.setTitleColor(Color.YELLOW);btnAbout=new JButton("Producer");btnCancel=new JButton("Close");btnCancel.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent ee){System.exit(0);}});btnAbout.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent ee){JOptionPane.showMessageDialog(null, "刘道广", "制作人",JOptionPane.INFORMATION_MESSAGE);}});p3.add(btnAbout);p3.add(btnCancel);reasult = new JTextField("0",20);reasult.setEditable(false);reasult.setHorizontalAlignment(JTextField.RIGHT);reasult.setForeground(Color.BLUE);p1.setBorder(tb);p1.add(reasult);btn0=new JButton("0"); btn0.addActionListener(this);btn1=new JButton("1");   btn1.addActionListener(this);btn2=new JButton("2");   btn2.addActionListener(this);btn3=new JButton("3");   btn3.addActionListener(this); btn4=new JButton("4");   btn4.addActionListener(this);btn5=new JButton("5");   btn5.addActionListener(this);btn6=new JButton("6");   btn6.addActionListener(this);btn7=new JButton("7");   btn7.addActionListener(this);btn8=new JButton("8");   btn8.addActionListener(this);btn9=new JButton("9");   btn9.addActionListener(this);btnD=new JButton(".");     btnD.addActionListener(this); btnD.setForeground(Color.GREEN);btnAC=new JButton("AC"); btnAC.addActionListener(this); btnAC.setBackground(Color.RED);btnAdd=new JButton("+"); btnAdd.addActionListener(this); btnAdd.setForeground(Color.CYAN);btnSub=new JButton("-"); btnSub.addActionListener(this); btnSub.setForeground(Color.CYAN);btnReasult=new JButton("="); btnReasult.addActionListener(this); btnReasult.setForeground(Color.RED);p2.add(btn1);p2.add(btn2);p2.add(btn3);p2.add(btn4);p2.add(btn5);p2.add(btn6);p2.add(btn7);p2.add(btn8);p2.add(btn9);p2.add(btn0);p2.add(btnD);p2.add(btnAC);p2.add(btnAdd);p2.add(btnSub);p2.add(btnReasult);p2.setLayout(new GridLayout(5,3));add(p1,BorderLayout.NORTH);add(p2,BorderLayout.CENTER);add(p3,BorderLayout.SOUTH);}public void num(int i){String s=null;s=String.valueOf(i);if(end){reasult.setText("0");end=false;}if((reasult.getText()).equals("0")){reasult.setText(s);}else{str=reasult.getText()+s;reasult.setText(str);}}public void actionPerformed(ActionEvent e){if(e.getSource()==btn1) num(1);else if(e.getSource()==btn2) num(2);else if(e.getSource()==btn3) num(3);else if(e.getSource()==btn4) num(4);else if(e.getSource()==btn5) num(5);else if(e.getSource()==btn6) num(6);else if(e.getSource()==btn7) num(7);else if(e.getSource()==btn8) num(8);else if(e.getSource()==btn9) num(9);else if(e.getSource()==btn0) num(0);else if(e.getSource()==btnAdd){sign(1);btnD.setEnabled(true);}else if(e.getSource()==btnSub){sign(2);btnD.setEnabled(true);}else if(e.getSource()==btnAC){btnD.setEnabled(true);reasult.setText("0");}else if(e.getSource()==btnD){str=reasult.getText();str+='.';reasult.setText(str);btnD.setEnabled(false);}else if(e.getSource()==btnReasult){btnD.setEnabled(true);num2=Double.parseDouble(reasult.getText());if(add){num1=num1+num2;}else if(sub){num1=num1-num2;}reasult.setText(String.valueOf(num1));end=true;}}public void sign(int s){if(s==1){add=true;sub=false;}else if(s==2){add=false;sub=true;}num1=Double.parseDouble(reasult.getText());end=true;}public static void main(String[] args){Jisuanqi j=new Jisuanqi();j.setTitle("+/-简易计算器");j.setLocation(500, 280);j.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);j.setResizable(false);j.pack();j.setVisible(true);}
}

转载于:https://www.cnblogs.com/markliu/archive/2012/06/19/2554600.html

JAVA作业-简易计算器相关推荐

  1. 简单计算器的设计java_(基于java的简易计算器的设计.doc

    (基于java的简易计算器的设计 基于java的简易计算器的设计 摘要 自从java语言诞生以来,java语言就以不可抵挡的趋势很快成为国际上广泛流行的面向对象编程语言,它既具有高级语言的特点,又少了 ...

  2. android studio大作业-简易计算器实现

    android studio大作业-简易计算器实现 先看效果图 基本功能:加,减,乘,除 核心代码实现 public class MainActivity extends AppCompatActiv ...

  3. java实现简易计算器,实现加减乘除,括号,算式查错,

    java实现简易计算器 问题分析 一.计算机界面显示 二. 计算器计算数据处理 三. 部分源代码(该源码未加入算式查错,文件资源正在上传) 三.完整源码,加减乘除,括号,delete,算式查错 问题分 ...

  4. 基于java平台简易计算器_基于java的简易计算器的设计

    基于java的简易计算器的设计 基于java的简易计算器的设计 摘要 自从java语言诞生以来,java语言就以不可抵挡的趋势很快成为国际上广泛流行的面向对象编程语言,它既具有高级语言的特点,又少了C ...

  5. java编写简易计算器_java实现简易计算器功能

    本文为大家分享了java实现简易计算器功能,具体内容如下 题目: 编写一个模拟计算器的程序.在面板中添加一个文本框(显示按键及运算结果). 10个数字按钮(0~9).4个运算按钮(加.减.乘.除).一 ...

  6. 用Java实现简易计算器

    计算器      Java实现代码 package New; import java.util.Scanner; public class Calculator {     public double ...

  7. Java实现简易计算器

    使用Java语言编写一个简易的可以实现加.减.乘.除运算的程序,主要的方法是对Java面板组件的应用和数据类型的转换. package one;import java.awt.Font; import ...

  8. java实现简易计算器完整代码

    早晨起来没事,打开mac突然想写个小程序,就写来个简易的计算器,可以实现基本的运算,测试目前无bug,下面分享下自己的代码. 首先写了个简单的界面如下: 整个面板用了BorderLayout布局,分为 ...

  9. Java入门 简易计算器

    package begin; /*计算器:1.显示共两行,上为计算过程,下为计算结果或输入数字2.可同时实现多个实数的四则运算.3.运算范围为double.4.可按钮输入,也可键盘输入.5.每次只能从 ...

最新文章

  1. Windows系统安装Oracle 11g客户端
  2. Java项目:基于Jsp实现网上定餐系统
  3. css3中transition属性详解
  4. 请问投稿中要求上传的author_SCI 这些投稿状态都是什么意思?审稿人这些“暗语”如何应对?下...
  5. bert简介_关于BERT:你不知道的事
  6. 滴滴出行的数据架构和信息流处理思路解析
  7. 算法6:只有五行的Floyd最短路算法
  8. 编译后没有taget文件夹_matconvnet安装、编译、配置
  9. python新建以时间命名的目录
  10. java 001 002_69期-Java SE-019-实用类-2-001-002
  11. linux内核维护者,Linux 内核维护者封杀明尼苏达大学(转载) - 优秀的Free OS(Linux)版 - 北大未名BBS...
  12. 安装linux后没有网卡驱动,重装完centos6.5后没有网卡驱动的解决方法
  13. video.js插件的使用
  14. c语言各类型数据混合运算
  15. Python生成验证码图片及验证用户提交的验证码是否正确
  16. 转 activity的launch mode
  17. Zig-Zag(Z型)填数
  18. ReferenceError Cannot access ‘xxx‘ before initialization
  19. Bowtie使用介绍
  20. 经济危机会影响软件质量吗?

热门文章

  1. mysql基础知识(一)
  2. [摘抄]隧道尽头的灯
  3. ShadowMap Sample
  4. 在没有 IIS 的条件下运行 ASMX(WebService)
  5. Linux基础命令与进阶
  6. MyBatis-Plus通过注解的方式绑定一对多查询
  7. java.sql.SQLException: Access denied for user ‘root‘@‘hadoop001‘ (using password: YES)
  8. hadoop 修复hdfs中文件块错误 和文件修复 Error: java.io.IOException: Cannot obtain block length for LocatedBlock
  9. 西安石油大学计算机学院于晓,西安石油大学计算机学院2009届本科毕业设计答辩.doc...
  10. html 中rem是什么单位,了解并使用CSS中的rem单位