📄 calculator.java
字号:
/**
*File Name : Calculator.java
*Author : CaoChunCheng
*Date : 2004-04-13
*Note : 一个简单的Java Applet计算器
*/
package com.java.calculator;
import java.applet.*;
import java.awt.*;
import java.util.*;
import java.math.*;
import java.awt.event.ActionListener;
import java.util.EventListener;
import java.awt.event.ActionEvent;
public class Calculator extends Applet implements ActionListener {
private CalculatorText tp;
private CalculatorButton1 bt1;
private CalculatorButton2 bt2;
private CalculatorButton3 bt3;
private String tempText;
private double operandOne,operandTwo,result;
private int intFlag;
private boolean booleanFlag;
public void init()
{
setLayout(null);
tempText = "";
this.setBackground(new java.awt.Color(138,200,213));
booleanFlag = true;
tp=new CalculatorText();
tp.setBounds(5,5,280,25);
add(tp);
bt1=new CalculatorButton1();
bt1.setBounds(5,80,40,200);
add(bt1);
bt2=new CalculatorButton2();
bt2.setBounds(60,35,230,35);
add(bt2);
bt3=new CalculatorButton3();
bt3.setBounds(60,80,230,200);
add(bt3);
bt1.button_addsub().addActionListener(this);
bt1.getButton_MC().addActionListener(this);
bt1.getButton_MR().addActionListener(this);
bt1.getButton_MS().addActionListener(this);
bt2.getButton_Backspace().addActionListener(this);
bt2.getButton_C().addActionListener(this);
bt2.getButton_CE().addActionListener(this);
bt3.getButton_0().addActionListener(this);
bt3.getButton_1().addActionListener(this);
bt3.getButton_2().addActionListener(this);
bt3.getButton_3().addActionListener(this);
bt3.getButton_4().addActionListener(this);
bt3.getButton_5().addActionListener(this);
bt3.getButton_6().addActionListener(this);
bt3.getButton_7().addActionListener(this);
bt3.getButton_8().addActionListener(this);
bt3.getButton_9().addActionListener(this);
bt3.getButton_add().addActionListener(this);
bt3.getButton_sub().addActionListener(this);
bt3.getButton_div().addActionListener(this);
bt3.getButton_mul().addActionListener(this);
bt3.getButton_dived().addActionListener(this);
bt3.getButton_sqrt().addActionListener(this);
bt3.getButton_xx().addActionListener(this);
bt3.getButton_d().addActionListener(this);
bt3.getButton_result().addActionListener(this);
bt3.getButton_mark().addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
if(e.getSource().equals(bt1.button_addsub())){
boolean flag = true;
if(tempText.equals("0")){
tempText = "";
}
if(tp.getTextField().getText().equals("-") && flag){
tempText = "";
tp.getTextField().setText("0");
flag = false;
}
if(tp.getTextField().getText().equals("") && flag){
tempText = tempText + "-";
tp.getTextField().setText(tempText);
flag = false;
}
if(tp.getTextField().getText().equals("0") && flag){
tempText = tempText + "-";
tp.getTextField().setText(tempText);
flag = false;
}
if(tempText.substring(0,1).equals("-") && !tempText.substring(1,2).equals("") && flag){
tempText = tempText.substring(1,tempText.length());
tp.getTextField().setText(tempText);
flag = false;
}
if(!tp.getTextField().getText().substring(0,1).equals("-") && flag){
tempText = "-" + tempText;
tp.getTextField().setText(tempText);
flag = false;
}
}
if(e.getSource().equals(bt1.getButton_MC())){
tp.getTextField().setText("这个功能还没有实现,请见谅!");
}
if(e.getSource().equals(bt1.getButton_MR())){
tp.getTextField().setText("这个功能还没有实现,请见谅!");
}
if(e.getSource().equals(bt1.getButton_MS())){
tp.getTextField().setText("这个功能还没有实现,请见谅!");
}
if(e.getSource().equals(bt3.getButton_sqrt())){
if(tp.getTextField().getText().length() != 0){
this.operandOne = Double.parseDouble(tp.getTextField().getText());
if(this.operandOne >= 0){
result = Math.sqrt(this.operandOne);
tempText = "";
if(String.valueOf(result).substring(String.valueOf(result).length()-2,String.valueOf(result).length()).equals(".0"))
tp.getTextField().setText(String.valueOf(result).substring(0,String.valueOf(result).length()-2));
else
tp.getTextField().setText(String.valueOf(result));
}
}
}
if(e.getSource().equals(bt2.getButton_CE())){
tp.getTextField().setText("");
tempText = "";
booleanFlag = true;
this.operandTwo = 0;
}
if(e.getSource().equals(bt2.getButton_C())){
tp.getTextField().setText("0");
tempText = "";
booleanFlag = true;
this.operandTwo = 0;
}
if(e.getSource().equals(bt2.getButton_Backspace())){
String stringTemp =new String(tp.getTextField().getText());
int len=stringTemp.length();
if(len==0)
{
tempText = "";
tp.getTextField().setText(tempText);
}
else
{
stringTemp =stringTemp.substring(0,len-1);
tempText = stringTemp;
tp.getTextField().setText(tempText);
}
}
if(e.getSource().equals(bt3.getButton_0())){
tempText = tempText + "0";
String stringTemp = new String(tp.getTextField().getText());
if((stringTemp.equals("-0")&&stringTemp.length()==2)||(stringTemp.equals("-00")&&stringTemp.length()==4))
{
tempText = "-";
tp.getTextField().setText("-0");
}
if((stringTemp.equals("0")&&stringTemp.length()==1)||(stringTemp.equals("00")&&stringTemp.length()==2))
{
tempText = "";
tp.getTextField().setText("0");
}
if(!(stringTemp.equals("-0")&&stringTemp.length()==2)&&!(stringTemp.equals("-00")&&stringTemp.length()==4)
&&!(stringTemp.equals("0")&&stringTemp.length()==1)&&!(stringTemp.equals("00")&&stringTemp.length()==2))
{
tp.getTextField().setText(tempText);
}
}
if(e.getSource().equals(bt3.getButton_1())){
tempText = tempText+"1";
if(tempText.substring(0,1).equals("0") && !tempText.substring(0,2).equals("0."))
tempText = tempText.substring(1,tempText.length());
tp.getTextField().setText(tempText);
}
if(e.getSource().equals(bt3.getButton_2())){
tempText = tempText+"2";
if(tempText.substring(0,1).equals("0") && !tempText.substring(0,2).equals("0."))
tempText = tempText.substring(1,tempText.length());
tp.getTextField().setText(tempText);
}
if(e.getSource().equals(bt3.getButton_3())){
tempText = tempText+"3";
if(tempText.substring(0,1).equals("0") && !tempText.substring(0,2).equals("0."))
tempText = tempText.substring(1,tempText.length());
tp.getTextField().setText(tempText);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -