`
felixour
  • 浏览: 32901 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
社区版块
存档分类
最新评论

Netjava project winXP计算器功能的实现

阅读更多

 终于完成了我第二个用事件做的项目,就是简单计算器的实现。这个计算器是仿造windows xp下的计算器制作的。



 
我们的计算器要实现有以下功能:
退格、清除当前、清除、数字按钮、三角函数、正负号、点、四则运算、开根号、百分号、倒数。
我们不妨分为三类:
基础按钮:数字按钮、退格、清除
单位运算:三角函数、正负号、点、百分号、倒数
双位运算:四则运算

 

首先我们要看一下窗体的布局,默认的是边框布局,那我们不妨就用边框布局啦~
北部是一个文本输入框,中间是有很多很多按钮的面板。
我们先做北部,记得把文本框设置为不可编辑。

public JPanel panelnorth() {
	JPanel panel = new JPanel();
	// 设文本框大小
	tf.setPreferredSize(new Dimension(50, 50));
	tf.setFont(new Font("宋体",Font.BOLD,19));
	// 设置不可编辑
	tf.setEditable(false);
	// 设置右对齐
	tf.setHorizontalAlignment(SwingConstants.RIGHT);
	tf.setOpaque(false);
	// 将文本框添加至窗体
	panel.add(tf);
	// 返回北面窗体对象
	return panel;
}

 首先我们添加数字按钮,以0为例:

//设置按钮0
JButton jbu = new JButton("0");		
//给按钮添加监听器
jbu.addActionListener(new ActionListener() {
	public void actionPerformed(ActionEvent e) {
		//如果当前窗口就为0,就设置当前窗口为0
		if (tf.getText().equals("0")) {
			tf.setText("0");
		} else {
			//否则就会在文本后添加0
			tf.setText(tf.getText() + "0");
		}
	}
});

 

然后是后退按钮:

 

//实例化一个后退按钮
JButton jbu = new JButton("Backspace");
//给后退按钮加监听器
jbu.addActionListener(new ActionListener() {
	public void actionPerformed(ActionEvent e) {
		//获取文本框的字体
		String temp = tf.getText();
		//减少最后的一个字符
		temp = temp.substring(0, temp.length() - 1);
		//设置文本框的内容
		tf.setText(temp);
	}
});		

 

清屏按钮:

 

//设置按钮clear
JButton jbu = new JButton("C");
//给按钮添加监听器
jbu.addActionListener(new ActionListener() {
	public void actionPerformed(ActionEvent e) {
		//初始化所有文本
		a = 0;b = 0;sign = ' ';bol = false;
		//设置文本框为0
		tf.setText("0");
	}
});

 

接下来是简答的单位运算,我们以开根号为例:

//添加按钮开根号
JButton jbu9 = new JButton("sqrt");		
//给按钮添加监听器
jbu9.addActionListener(new ActionListener(){
	public void actionPerformed(ActionEvent e){
		//获取文本框内容转化为数字
		double temp = Double.parseDouble(tf.getText());
		//给数字开根号
		temp = Math.sqrt(temp);
		//将数字转化为字符串添加到文本框中
		tf.setText(Double.toString(temp));
		//设置为可计算
		bol = true;
	}
});

 

双位运算,我们首先声明变量:

private char sign = ' ';
private double a = 0, b = 0;
private boolean bol = false;

 

sign代表运算符号,a代表第一个数字,当按运算符时记录此数字,并且记录此符号,然后设置为可编辑。
而后,我们再输入一个数字,当按等于号时,就会记录第二个数字赋给b,然后会输出最终结果。
我们以加号为例:

 

//添加按钮加号
JButton jbu = new JButton("+");
//添加按钮监听器
	jbu.addActionListener(new ActionListener() {
		public void actionPerformed(ActionEvent e) {
		//设置标识符为加号
		sign = '+';
		//从文本框获取字符串转化为数字给第一个变量
		a = Double.parseDouble(tf.getText());
		//设置可以编辑
		bol = true;
	}
});

 

还有就是最重要的等于号: 

//实例化按钮对象等于
JButton jbu = new JButton("=");
//给按钮添加监听器
jbu.addActionListener(new ActionListener() {
	public void actionPerformed(ActionEvent e) {
		//如果不可编辑,把当前窗体的值赋给b
		if(!bol)	b = Double.parseDouble(tf.getText());
		//初始化计算结果
		double c = 0;
		//switch选择运算符号
		switch (sign) {
		case '+':
			c = a + b;
			break;
		case '-':
			c = a - b;
			break;
		case '*':
			c = a * b;
			break;
		case '/':
			c = a / b;
			break;
		default:
			break;
		}
		//如果没有小数点
		if(c==(int)c){
			//设置c为整型添加到窗体
			tf.setText(Integer.toString((int)c));
		}else{
			//设置c为浮点型添加到窗体
		tf.setText(Double.toString(c));}
		//设置为可计算
		bol = true;
		//把当前值赋给a
		a=c;
	}
});

 

依上述方法就可以把计算器做玩,然后去做自己的运算啦~

  • 大小: 34.2 KB
0
0
分享到:
评论

相关推荐

    Java复杂计算器的实现(改进版)

    在本项目中,"Java复杂计算器的实现(改进版)"是一个高级的编程实践,它旨在构建一个功能丰富的计算工具,能够处理复杂的数学运算。这个计算器不仅支持基本的加、减、乘、除,还可能包含对数、指数、平方根、三角...

    java多功能计算器

    【标题】"java多功能计算器" 是一个基于Java编程语言实现的计算器软件,它不仅具备基本的加、减、乘、除等运算功能,还可能包含了更复杂的功能,如科学计算、三角函数、对数、指数、求根等。在Java编程中,实现这样...

    java实现简单计算器功能

    加法运算: 减法运算: 乘法运算: 除法运算:; 实现简单功能

    java简易计算器 java简易计算器

    java简易计算器 java简易计算器 java简易计算器java简易计算器 java简易计算器 java简易计算器java简易计算器 java简易计算器 java简易计算器java简易计算器 java简易计算器 java简易计算器java简易计算器 java简易...

    java计算器代码 实现计算器功能

    java计算器代码 实现计算器的功能 欢迎下载

    基于Java swing组件实现简易计算器

    "基于Java swing组件实现简易计算器" 本文主要介绍了基于Java swing组件实现简易计算器的知识点,以下是相关知识点的总结: 1. JFrame组件:JFrame是Java swing组件中的一种顶层容器,用于创建一个窗口框架。通过...

    java 简易计算器的实现

    在Java编程语言中,实现一个简易计算器涉及到基本的算术运算、用户输入处理以及控制流程。下面我们将深入探讨这个主题。 首先,让我们了解一个简单的Java计算器的基本架构。它通常包含一个主类,其中定义了计算功能...

    java版的多功能计算器实现

    本项目名为"java版的多功能计算器实现",它不仅提供了基本的四则运算,还扩展到了科学计算,这包括但不限于对数、指数、三角函数、复数运算等高级功能。这样的设计使得计算器不仅适用于日常计算,还可以满足数学建模...

    一款java语言计算器,能实现基本功能

    本项目提供了一款基于Java语言实现的简单计算器,它具备基础的计算功能,是初学者学习和理解Java编程的一个好实例。下面将详细讲解这款Java计算器的相关知识点。 1. **Java基础语法**:此计算器程序展示了Java的...

    Java实现高级计算器

    该计算器源代码用Java实现,界面简单,精致,实现了多功能输入,支持键盘输入,记录计算过程等,非常适合初学者。NetBeans环境下实现,如果你是Eclipse环境,直接新建项目,并拷贝SRC目录下的java文件即可。

    java实现的计算器(界面程序)

    本项目名为“java实现的计算器(界面程序)”,使用了Java Swing库来构建计算器的界面,并采用了GridBagLayout布局管理器来优化组件的摆放,以实现一个美观且功能齐全的计算器。 Java Swing是Java AWT(抽象窗口...

    java简单计算器的实现.rar

    在Java编程语言中,实现一个简单的计算器涉及到基本的算术运算和用户交互。这个项目旨在帮助初学者理解如何处理输入、执行计算以及显示结果。在这个"java简单计算器的实现"中,我们可以预计代码将包括以下几个关键...

    java 简单的计算器

    java 简单的计算器java 简单的计算器java 简单的计算器java 简单的计算器java 简单的计算器java 简单的计算器java 简单的计算器java 简单的计算器java 简单的计算器java 简单的计算器java 简单的计算器java 简单的...

    用Java实现计算器

    用Java实现的简易计算器 Java课程作业 ;三个JTextField显示的分别是:储存的数,计算表达式,计算结果;计算顺序:不论优先级,一律按照从左到右的顺序计算,跟Windows自带的计算器一样;清除键:清除表达式和计算...

    Java-计算器源码.zip

    Java计算器源码是一个典型的编程示例,展示了如何在Java中实现一个简单的计算器程序。这个程序能够执行基本的数学运算,包括加法、减法、乘法和除法,并且能够处理括号内的嵌套运算,这涉及到计算的优先级问题。下面...

    JAVA多功能计算器

    总之,"JAVA多功能计算器"是一个涵盖了进制转换和计算功能的实用工具,它的实现涉及到Java编程语言的基础知识、数据转换算法以及用户界面设计。通过这个项目,开发者不仅可以巩固Java编程技能,还可以学习到如何处理...

    基于Java的计算器实现

    【基于Java的计算器实现】是广东工业大学计算机专业的一份Java大作业,主要目的是让学生通过编写一个功能完备的计算器程序,掌握Java编程语言的基础知识以及面向对象编程的思想。在这个项目中,我们将探讨以下几个...

    java Swing实现计算器源码

    java Swing实现计算器源码

    java简单计算器的实现

    用java实现一个简单的计算器,源码~~

Global site tag (gtag.js) - Google Analytics