⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 calculatorapplet.java

📁 使用java编写的windows科学计算器applet版
💻 JAVA
字号:
/** 		Calculator for Java
 *
 *				@author:pahran
 *				@version:2.5
 *
 */
package calculatorApplet;

import java.awt.event.*;
import javax.swing.*;
import java.awt.*;

public class CalculatorApplet extends JApplet
{
	private JButton buttonC,button1,button2,button3,button4,button5,button6,button7,button8,button9,button0,buttonPoint,buttonEqu,buttonAdd,buttonSub,buttonMul,buttonDiv;
	private JTextField showPanel;
	private boolean pointFlag=false,operatorFlag=false,operatorTyped=false;
	private	double tempFloat1=0,tempFloat2=0;
	private	char operators=0;
	public void init()
	{
		Container container = getContentPane();
		container.setLayout(new BorderLayout());
		JPanel basePanel,stuffPanel1,stuffPanel2,stuffPanel3;
		basePanel = new JPanel();
		stuffPanel1=new JPanel();
		stuffPanel2=new JPanel();
		stuffPanel3=new JPanel();
		showPanel = new JTextField("0");
		showPanel.setFont(new Font("SansSerif",Font.PLAIN,17));
		showPanel.setColumns(280);
		showPanel.setEditable(false);
		showPanel.setBackground(Color.white);
		showPanel.setHorizontalAlignment(JTextField.RIGHT);
		buttonC=new JButton("C");
		button1=new JButton("1");
		button2=new JButton("2");
		button3=new JButton("3");
		button4=new JButton("4");
		button5=new JButton("5");
		button6=new JButton("6");
		button7=new JButton("7");
		button8=new JButton("8");
		button9=new JButton("9");
		button0=new JButton("0");
		buttonPoint=new JButton(".");
		buttonEqu=new JButton("=");
		buttonAdd=new JButton("+");
		buttonSub=new JButton("-");
		buttonMul=new JButton("*");
		buttonDiv=new JButton("/");
		button1.setForeground(Color.blue);
		button2.setForeground(Color.blue);
		button3.setForeground(Color.blue);
		button4.setForeground(Color.blue);
		button5.setForeground(Color.blue);
		button6.setForeground(Color.blue);
		button7.setForeground(Color.blue);
		button8.setForeground(Color.blue);
		button9.setForeground(Color.blue);
		button0.setForeground(Color.blue);
		buttonPoint.setForeground(Color.blue);
		buttonC.setForeground(Color.red);
		buttonEqu.setForeground(Color.red);
		buttonAdd.setForeground(Color.red);
		buttonSub.setForeground(Color.red);
		buttonMul.setForeground(Color.red);
		buttonDiv.setForeground(Color.red);
		ButtonHandle handle=new ButtonHandle();
		buttonC.addActionListener(handle);
		button1.addActionListener(handle);
		button2.addActionListener(handle);
		button3.addActionListener(handle);
		button4.addActionListener(handle);
		button5.addActionListener(handle);
		button6.addActionListener(handle);
		button7.addActionListener(handle);
		button8.addActionListener(handle);
		button9.addActionListener(handle);
		button0.addActionListener(handle);
		buttonPoint.addActionListener(handle);
		buttonEqu.addActionListener(handle);
		buttonAdd.addActionListener(handle);
		buttonSub.addActionListener(handle);
		buttonMul.addActionListener(handle);
		buttonDiv.addActionListener(handle);
		basePanel.setLayout(new GridLayout(5,4,7,7));
		basePanel.add(stuffPanel1);
		basePanel.add(stuffPanel2);
		basePanel.add(stuffPanel3);
		basePanel.add(buttonC);
		basePanel.add(button7);
		basePanel.add(button8);
		basePanel.add(button9);
		basePanel.add(buttonDiv);
		basePanel.add(button4);
		basePanel.add(button5);
		basePanel.add(button6);
		basePanel.add(buttonMul);
		basePanel.add(button1);
		basePanel.add(button2);
		basePanel.add(button3);
		basePanel.add(buttonSub);
		basePanel.add(button0);
		basePanel.add(buttonPoint);
		basePanel.add(buttonEqu);
		basePanel.add(buttonAdd);
		container.add(basePanel,BorderLayout.CENTER);
		container.add(showPanel,BorderLayout.NORTH);
	}
	
	private class ButtonHandle implements ActionListener{
		public void actionPerformed(ActionEvent event)
		{
			JButton sourceButton=(JButton)event.getSource();
			if(sourceButton==buttonC)
			{
				pointFlag=false;operatorFlag=false;operatorTyped=false;
				tempFloat1=0;tempFloat2=0;
				operators=0;
				showPanel.setText("0");
			}
			else if(sourceButton==button1)
			{
				if(operatorFlag)
				{
					showPanel.setText("");
					operatorFlag=false;
				}
				if(showPanel.getText().equals("0"))
					showPanel.setText("");
				showPanel.setText(showPanel.getText()+"1");
			}
			else if(sourceButton==button2)
			{
				if(operatorFlag)
				{
					showPanel.setText("");
					operatorFlag=false;
				}
				if(showPanel.getText().equals("0"))
					showPanel.setText("");
				showPanel.setText(showPanel.getText()+"2");
			}
			else if(sourceButton==button3)
			{
				if(operatorFlag)
				{
					showPanel.setText("");
					operatorFlag=false;
				}
				if(showPanel.getText().equals("0"))
					showPanel.setText("");
				showPanel.setText(showPanel.getText()+"3");
			}
			else if(sourceButton==button4)
			{
				if(operatorFlag)
				{
					showPanel.setText("");
					operatorFlag=false;
				}
				if(showPanel.getText().equals("0"))
					showPanel.setText("");
				showPanel.setText(showPanel.getText()+"4");
			}
			else if(sourceButton==button5)
			{
				if(operatorFlag)
				{
					showPanel.setText("");
					operatorFlag=false;
				}
				if(showPanel.getText().equals("0"))
					showPanel.setText("");
				showPanel.setText(showPanel.getText()+"5");
			}
			else if(sourceButton==button6)
			{
				if(operatorFlag)
				{
					showPanel.setText("");
					operatorFlag=false;
				}
				if(showPanel.getText().equals("0"))
					showPanel.setText("");
				showPanel.setText(showPanel.getText()+"6");
			}
			else if(sourceButton==button7)
			{
				if(operatorFlag)
				{
					showPanel.setText("");
					operatorFlag=false;
				}
				if(showPanel.getText().equals("0"))
					showPanel.setText("");
				showPanel.setText(showPanel.getText()+"7");
			}
			else if(sourceButton==button8)
			{
				if(operatorFlag)
				{
					showPanel.setText("");
					operatorFlag=false;
				}
				if(showPanel.getText().equals("0"))
					showPanel.setText("");
				showPanel.setText(showPanel.getText()+"8");
			}
			else if(sourceButton==button9)
			{
				if(operatorFlag)
				{
					showPanel.setText("");
					operatorFlag=false;
				}
				if(showPanel.getText().equals("0"))
					showPanel.setText("");
				showPanel.setText(showPanel.getText()+"9");
			}
			else if(sourceButton==button0)
			{
				if(operatorFlag)
				{
					showPanel.setText("");
					operatorFlag=false;
				}
				if(showPanel.getText().equals("0"))
					showPanel.setText("");
				showPanel.setText(showPanel.getText()+"0");
			}
			else if(sourceButton==buttonPoint)
			{
				if(!pointFlag)
				{
					if(!operatorFlag)
						showPanel.setText(showPanel.getText()+".");
					else
					{
						showPanel.setText("0.");
						operatorFlag=false;
					}
					pointFlag=true;
				}
			}
			else if(sourceButton==buttonEqu)
			{
				if(operatorTyped)
				{
					pointFlag=false;operatorTyped=false;
					tempFloat2=Double.parseDouble(showPanel.getText());
					switch(operators){
						case '+':
							tempFloat1=tempFloat1+tempFloat2;break;
						case '-':
							tempFloat1=tempFloat1-tempFloat2;break;
						case '*':
							tempFloat1=tempFloat1*tempFloat2;break;
						case '/':
							tempFloat1=tempFloat1/tempFloat2;
						}
					if(tempFloat1==(int)tempFloat1)
						showPanel.setText(Integer.toString((int)tempFloat1));
					else
						showPanel.setText(Double.toString(tempFloat1));
					tempFloat2=0;
				}
				operatorFlag=true;
			}
			else	//operator button
			{
				if(operatorTyped&&!operatorFlag)
				{
				tempFloat2=Double.parseDouble(showPanel.getText());
				switch(operators){
					case '+':
						tempFloat1=tempFloat1+tempFloat2;break;
					case '-':
						tempFloat1=tempFloat1-tempFloat2;break;
					case '*':
						tempFloat1=tempFloat1*tempFloat2;break;
					case '/':
						tempFloat1=tempFloat1/tempFloat2;
					}
					if(tempFloat1==(int)tempFloat1)
						showPanel.setText(Integer.toString((int)tempFloat1));
					else
						showPanel.setText(Double.toString(tempFloat1));
				}
				else
				{
					tempFloat1=Double.parseDouble(showPanel.getText());
					operatorTyped=true;
				}
				operators=event.getActionCommand().charAt(0);
				pointFlag=false;
				operatorFlag=true;
			}
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -