有两个关键的地方:

其一: JTextField field=new JTextField(10);

这是一个文本输入框,里面的参数10的意思是,这个输入框的长度为10列

其二:点击求和按钮,出结果 第一:对求和按钮设置监听 第二对按下求和按钮(按钮动作的实现)

设置监听:bt = new JButton("求和")

bt.addActionListener(new ActionListener() {      // 设置监听有圆括号(关键词是addActionListener)
 
         @Override  // 接下来就是按钮动作的实现 (关键词ActionEvent )
         public void actionPerformed(ActionEvent e) {
             int value1 = Integer.parseInt(t1.getText());
             int value2 = Integer.parseInt(t2.getText());
             t3.setText(Integer.toString(value1+value2));  //把加号换成乘,相应的变成乘法计算器
         }
     });

自己修改的一个模式,尽可能的接近绣花的小PS软件

bt = new JButton("求和")

bt.addActionListener(new ActionListener() {
   public void actionPerformed(ActionEvent e) {
         jiafa(e);
        }   
    });

//接下来独立在上面的程序,在后面写了一个程序

void jiafa(ActionEvent e) {
        int value1 = Integer.parseInt(t1.getText());
           int value2 = Integer.parseInt(t2.getText());
           t3.setText(Integer.toString(value1+value2));   
     }

 

 

经典的用java扣蓝技术也是这个模式:

JMenuItem Item1;  

Item1 = new JMenuItem("抠蓝");   //, undoIcon);
                Item1.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
            Item1_process(e);       //子菜单1处理程序
            }
        });

 

void Item1_process(ActionEvent e) {
BufferedImage image1=null;
       
           chooser.setDialogType(JFileChooser.OPEN_DIALOG);
           if(chooser.showDialog(this, null) == JFileChooser.APPROVE_OPTION) {
            try { image1 = ImageIO.read(chooser.getSelectedFile()); }
            catch(Exception ex) { return ;}
        }      
           image=koulanImage.image_add(image,image1);
        imagePanel.setImage(image);
        imagePanel.repaint();          
    }

 

在同一个包下有koulanImage.java 综合起来就能扣蓝了

 

 

加法计算器的源程序如下

package dsfa;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*; class AddDemo extends JFrame { JLabel b1, b2;
JTextField t1, t2, t3;
JButton bt; public AddDemo() {
b1 = new JLabel("请你输入第一个数", JLabel.CENTER);
b2 = new JLabel("请你输入第二个数", JLabel.CENTER);
b1.setBorder(BorderFactory.createEtchedBorder());
b2.setBorder(BorderFactory.createEtchedBorder());
t1 = new JTextField(2);
t2 = new JTextField(2);
t3 = new JTextField(2);
t3.setEditable(false);
bt = new JButton("求和");
setLayout(new GridLayout(3, 2));
add(b1);
add(t1);
add(b2);
add(t2);
add(bt);
add(t3);
bt.addActionListener(new ActionListener() { @Override
public void actionPerformed(ActionEvent e) {
int value1 = Integer.parseInt(t1.getText());
int value2 = Integer.parseInt(t2.getText());
t3.setText(Integer.toString(value1+value2));
}
});
setSize(500, 500);
setVisible(true);
// setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
} public static void main(String arg[]) {
new AddDemo();
}
}

 

下面这个程序在迟静老师最后一节的几何产品设计课前做的

package dsfa;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*; class AddDemo extends JFrame { JLabel b1, b2;
JTextField t1, t2, t3;
JButton bt; public AddDemo() {
b1 = new JLabel("请你输入第一个数", JLabel.CENTER);
b2 = new JLabel("请你输入第二个数", JLabel.CENTER);
b1.setBorder(BorderFactory.createEtchedBorder());
b2.setBorder(BorderFactory.createEtchedBorder());
t1 = new JTextField(2);
t2 = new JTextField(2);
t3 = new JTextField(2);
t3.setEditable(false);
bt = new JButton("求和");
setLayout(new GridLayout(3, 2));
add(b1);
add(t1);
add(b2);
add(t2);
add(bt);
add(t3);
bt.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { jiafa(e);
} }); setSize(500, 500);
setVisible(true); } void jiafa(ActionEvent e) { //遗留问题
int value1 = Integer.parseInt(t1.getText());
int value2 = Integer.parseInt(t2.getText());
t3.setText(Integer.toString(value1+value2));
} public static void main(String arg[]) {
new AddDemo();
}
}

 

 

遗留问题:void jiafa(ActionEvent e)  将这个拿进构造方法里面去,编译显示错误

Java-简单的计算器(只能进行加法运算)的更多相关文章

  1. Java简单公式计算器

    最近给公司开发业务代码时,碰到一个场景,简单描述是这样的: 客户要向咱们公司定制一件产品,这个产品呢,有很多属性,那公司得根据这些属性报价呀,怎么报价呢?公司针对某种类型的产品有一个基准价,在同类产品 ...

  2. java简单计算器

    写的一个小计算器,留着以后看吧. import java.awt.BorderLayout; import java.awt.Button; import java.awt.Color; import ...

  3. 简单的新手加法运算(基于Struts2)

    软件151  王帅 在搭好框架的前提下,首先编写action.java文件: import com.opensymphony.xwork2.ActionSupport; public class Us ...

  4. ajax 的简单请求,get的加法运算,post加法运算,用户登录认证

    视图函数部分 from django.shortcuts import render, HttpResponse import time from app01.models import User i ...

  5. Java基础-继承 利用接口做参数,写个计算器,能完成+-*/运算

    38.利用接口做参数,写个计算器,能完成+-*/运算 (1)定义一个接口Compute含有一个方法int computer(int n,int m); (2)设计四个类分别实现此接口,完成+-*/运算 ...

  6. 深入理解计算机系统(2.8)---浮点数的舍入,Java中的舍入例子以及浮点数运算(重要)

    前言 上一章我们简单介绍了IEEE浮点标准,本次我们主要讲解一下浮点运算舍入的问题,以及简单的介绍浮点数的运算. 之前我们已经提到过,有很多小数是二进制浮点数无法准确表示的,因此就难免会遇到舍入的问题 ...

  7. jsp学习---使用jsp和JavaBean实现超简单网页计算器

    一.需求 如题,用jsp实现一个超简单的网页计算器. 二.实现 1.效果图 1)初始界面: 2)随便输入两个数进行相乘: 3)当除数为零时提示报错: 2.代码 Calculator.java pack ...

  8. java SWT/Rap 计算器版本2(键盘鼠标兼容)

    package cn.lesaas.nof.rwtswt.ui.dialog; import java.math.BigDecimal; import org.eclipse.swt.SWT;impo ...

  9. 整数运算:CPU内部只有加法运算

    学汇编的一边儿去.我这里讲的是CPU进行计算的原理.首先我这里用MC的红石电路模拟了一个加法器:http://www.0xaa55.com/thread-313-1-1.htm首先加法器是怎么实现的呢 ...

随机推荐

  1. Java Swing 简单介绍

    Swing 是一个为Java设计的GUI工具包. Swing是JAVA基础类的一部分. Swing包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表. Swing提供许多比AWT更好的屏幕 ...

  2. tomcat设置默认启动项

     Tomcat设置默认启动项目 Tomcat设置默认启动项目,顾名思义,就是让可以在浏览器的地址栏中输入ip:8080,就能访问到我们的项目.具体操作如下:     1.打开tomcat的安装根目 ...

  3. linux命令学习 随笔

    linux命令随笔 linux命令随笔 用户操作 搜索命令 PATH环境变量 Linux中的通配符 文件搜索命令locate 搜索命令的命令whereis与which 文件搜索命令find(最强大的哦 ...

  4. 菜鸟翻译:国外的一个关于.net core的学习系列 第一天(安装并运行.NET core 到windox系统里面)

    原文地址: Day 1 - Installing and Running .NET Core on a Windows Box 免责声明:我不是.NET Core 的团队成员.我使用的工具是公开可用的 ...

  5. 20165326 java第三周学习笔记

    纸质学习笔记 代码托管

  6. leetcode第72题:编辑距离

    给定两个单词 word1 和 word2,计算出将 word1 转换成 word2 所使用的最少操作数 . 你可以对一个单词进行如下三种操作: 插入一个字符 删除一个字符 替换一个字符 示例 1: 输 ...

  7. elasticsearch学习笔记——相关插件和使用场景

    logstash-input-jdbc学习 ES(elasticsearch缩写)的一大优点就是开源,插件众多.所以扩展起来非常的方便,这也造成了它的生态系统越来越强大.这种开源分享的思想真是与天朝格 ...

  8. python day05 作业答案

    1. b.不可以 c.tu=("alex",[11,22,{"k1":"v1","k2":["age" ...

  9. Python 黏包及黏包解决方案

    粘包现象 说粘包之前,我们先说两个内容,1.缓冲区.2.windows下cmd窗口调用系统指令 1 缓冲区(下面粘包现象的图里面还有关于缓冲区的解释) 每个 socket 被创建后,都会分配两个缓冲区 ...

  10. https://stackoverflow.com/questions/40949967/running-storm-from-intellij-nimbus-error

    https://stackoverflow.com/questions/40949967/running-storm-from-intellij-nimbus-error 0down votefavo ...