import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class jisuanqi extends JFrame {
JTextField tf = new JTextField();
JPanel p = new JPanel();
double a = 0;
String s, str;
JButton b0 = new JButton("0");
JButton b1 = new JButton("1");
JButton b2 = new JButton("2");
JButton b3 = new JButton("3");
JButton b4 = new JButton("4");
JButton b5 = new JButton("5");
JButton b6 = new JButton("6");
JButton b7 = new JButton("7");
JButton b8 = new JButton("8");
JButton b9 = new JButton("9");
JButton b10 = new JButton("+");
JButton b11 = new JButton("-");
JButton b12 = new JButton("*");
JButton b13 = new JButton("/");
JButton b14 = new JButton(".");
JButton b15 = new JButton("=");
JButton b16 = new JButton("Clear");
public static void main(String[] args) {
new jisuanqi().launchFrane();
}
public void launchFrane() {
this.setLocation(300, 300);
this.setSize(300, 400);
add(tf, BorderLayout.NORTH);
add(p, BorderLayout.SOUTH);
p.setLayout(new GridLayout(5, 4));
p.add(b0);
p.add(b1);
p.add(b2);
p.add(b3);
p.add(b4);
p.add(b5);
p.add(b6);
p.add(b7);
p.add(b8);
p.add(b9);
p.add(b10);
p.add(b11);
p.add(b12);
p.add(b13);
p.add(b14);
p.add(b15);
p.add(b16);
pack();
setVisible(true);
b0.addActionListener(new BListener());
b1.addActionListener(new BListener());
b2.addActionListener(new BListener());
b3.addActionListener(new BListener());
b4.addActionListener(new BListener());
b5.addActionListener(new BListener());
b6.addActionListener(new BListener());
b7.addActionListener(new BListener());
b8.addActionListener(new BListener());
b9.addActionListener(new BListener());
b10.addActionListener(new BListener());
b11.addActionListener(new BListener());
b12.addActionListener(new BListener());
b13.addActionListener(new BListener());
b14.addActionListener(new BListener());
b15.addActionListener(new BListener());
b16.addActionListener(new BListener());
this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
class BListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
JButton b = (JButton) e.getSource();
String s = b.getLabel();
if (s=="=")
{
jisuan();
s=String.valueOf(a);
tf.setText(s);
str="";
}
else if(s=="+")
{
jisuan();
tf.setText("");
str="+";
}
else if(s=="-")
{
jisuan();
tf.setText("");
str="-";
}
else if(s=="*")
{
jisuan();
tf.setText("");
str="*";
}
else if(s=="/")
{
jisuan();
tf.setText("");
str="/";
}
else
tf.setText(tf.getText()+s);
if(s=="Clear")
tf.setText("");
}
public void jisuan()
{
if(str=="+")
{
a+=Double.valueOf(tf.getText());
}
else if(str=="-")
{
a-=Double.valueOf(tf.getText());
}
else if(str=="*")
{
a*=Double.valueOf(tf.getText());
}
else if(str=="/")
{
a/=Double.valueOf(tf.getText());
}
else
{
a=Double.valueOf(tf.getText());
}
}
}
}
分享到:
相关推荐
微信小程序 简易计算器 (源码)微信小程序 简易计算器 (源码)微信小程序 简易计算器 (源码)微信小程序 简易计算器 (源码)微信小程序 简易计算器 (源码)微信小程序 简易计算器 (源码)微信小程序 简易计算器 (源码)微信...
在Java编程语言中实现一个简易计算器是一项常见的学习任务,它能帮助初学者更好地理解面向对象编程的概念、控制流程以及输入/输出操作。下面我们将详细探讨如何实现这样的计算器,并结合提供的"计算器"文件名称来...
简易计算器(C 语言课程设计) 本资源是关于简易计算器的设计和实现,使用 C 语言编程语言,旨在训练读者的基本编程能力和图形模式下的编程。 1. 计算器的历史发展 计算器的历史可以追溯到中国古代,使用筹策作为...
本篇文章将深入探讨如何使用51单片机实现一个简易计算器的功能,这通常涉及硬件接口、软件编程以及人机交互设计。 首先,我们要理解51单片机的基本结构。51系列单片机由Intel公司开发,具有8位CPU,内部集成RAM、...
本简易计算器项目是一个典型的Java Swing图形界面应用案例,它不仅包含了基本的数学运算功能,还扩展了简单的内存操作功能。通过对该项目的学习,可以深入了解Swing组件库的使用方法以及如何在Java中实现事件驱动的...
简易计算器java实训报告.pdf
"嵌入式实验报告-简易计算器.pdf" 本实验报告的主要目的是设计和实现一个具有加减乘除功能的简易计算器,使用数码管和4X4矩阵式键盘来实现计算器的功能。下面是本实验报告的知识点总结: 1. 计算器的原理:计算器...
**基于LabVIEW编写的简易计算器** LabVIEW,全称Laboratory Virtual Instrument Engineering Workbench,是一款由美国国家仪器(NI)公司开发的图形化编程环境,主要用于创建虚拟仪器、数据采集和控制系统的应用...
66-矩阵键盘简易计算器(51单片机C语言实例Proteus仿真和代码)66-矩阵键盘简易计算器(51单片机C语言实例Proteus仿真和代码)66-矩阵键盘简易计算器(51单片机C语言实例Proteus仿真和代码)66-矩阵键盘简易计算器(51...
本报告将详细阐述如何使用汇编语言设计一个简易计算器,支持基本的加、减、乘、除运算,并具有简单的用户交互界面。 一、程序功能设计论证 简易计算器的主要任务是接收用户输入的两个数值以及一个运算符,然后执行...
【BCB简易计算器源码详解】 本篇将详细介绍基于C++Builder开发的“BCB简易计算器源码”。C++Builder是一款强大的集成开发环境(IDE),它提供了C++语言的编译器和RAD(快速应用程序开发)工具,使得开发者能够高效...
在这个简易计算器项目中,主要涉及到的是Activity,它是用户界面和交互的核心。Activity负责显示UI,并响应用户的操作。 在Eclipse中,开发者会使用XML布局文件来设计用户界面。在这个案例中,计算器的UI可能包含...
在本项目中,我们讨论的是一个使用C#编程语言创建的简单计算器应用程序。这个计算器是为初学者设计的,特别是那些正在进行课程设计或学习C#基础的学员。它利用Microsoft Visual Studio 2017(VS2017)作为集成开发...
【标题】"简易计算器Java IDEA" 是一个基于Java Swing开发的简单计算器项目,它在集成开发环境IntelliJ IDEA中实现。这个项目旨在帮助初学者理解Java编程语言的基础,特别是Swing库在创建图形用户界面(GUI)方面的...
jQuery简易计算器是一个基于JavaScript库jQuery实现的简单计算工具,它为用户提供了一个直观的界面来执行基本的算术运算。这个项目对于初学者来说是很好的学习材料,因为它涉及到前端开发中的DOM操作、事件处理以及...
这篇设计报告详细介绍了在数电实验二中设计一个简易计算器的过程。这个实验旨在让学生们熟练掌握数字电子技术,包括逻辑电路设计、Verilog HDL 数字系统设计、PLD(可编程逻辑器件)实验箱的使用以及Quartus II软件...
《51单片机实现简易计算器的原理及局限性》 51单片机是一种广泛应用的微控制器,常用于各种嵌入式系统的设计。在这个项目中,它被用来实现一个简易计算器,具备基本的数学运算功能。计算器的核心设计包括4x4键盘...
基于STC89C52单片机的简易计算器源码+仿真 基于STC89C52单片机的简易计算器源码+仿真 基于STC89C52单片机的简易计算器源码+仿真 基于STC89C52单片机的简易计算器源码+仿真 基于STC89C52单片机的简易计算器源码+仿真 ...
通信工程中的数字电子技术实验是理解并掌握数字系统设计的基础,而“简易计算器”是一个典型的应用实例。这个实验设计了一个能处理四位自然数加减乘运算的计算器,并且具有识别运算优先级和处理溢出错误的功能。在此...
微信小程序 小工具类 简易计算器 (源代码+截图)微信小程序 小工具类 简易计算器 (源代码+截图)微信小程序 小工具类 简易计算器 (源代码+截图)微信小程序 小工具类 简易计算器 (源代码+截图)微信小程序 小...