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

📄 cal.java

📁 简易计算器不需要很高深的算法
💻 JAVA
字号:
import java.awt.*;
import java.awt.event.*;
public class cal implements ActionListener
   {
		Frame fm;
		MenuBar mainMenu;
		Menu editMenu,aboutMenu;
		Panel panel1,panel2;
		TextField tf1;
		Button button[],buttonClear,buttonAdd,buttonSub,buttonMul,buttonDiv,buttonEqual;
		float NumTmp=0,NumTmp1=0;
	    int key=0;
	    String TextTmp="";
		public void init() // 初始化
		{
			Frame fm = new Frame("Simple Calculator");
			fm.setSize(280,170);
			fm.setLocation(300,240);

			mainMenu = new MenuBar();
			editMenu = new Menu("编辑");
			aboutMenu = new Menu("关于");
			mainMenu.add(editMenu);
			editMenu.addActionListener(this);
			mainMenu.add(aboutMenu);
			aboutMenu.addActionListener(this);
			fm.setMenuBar(mainMenu);

	    	panel1 = new Panel();
	    	panel2 = new Panel();
	    	fm.add(panel1, BorderLayout.NORTH);
	    	panel1.setLayout(new BorderLayout());
	    	fm.add(panel2);
	    	panel2.setLayout(new GridLayout(4,4));

			fm.addWindowListener(new WinClose());

			tf1 = new TextField(20);
			tf1.setEditable(false);
			tf1.setForeground(new Color(0,0,255));

			button = new Button[10];
			for(int i=0;i<=9;i++)
			{
				button[i] = new Button(Integer.toString(i));
			    button[i].setForeground(new Color(0, 0, 255));
			}
			buttonClear = new Button("C");
			buttonAdd = new Button("+");
			buttonSub = new Button("-");
			buttonMul = new Button("*");
			buttonDiv = new Button("/");
			buttonEqual = new Button("=");

			panel1.add(tf1);

			panel2.add(button[7]);
			panel2.add(button[8]);
			panel2.add(button[9]);
			panel2.add(buttonAdd);
			panel2.add(button[4]);
			panel2.add(button[5]);
			panel2.add(button[6]);
			panel2.add(buttonSub);
			panel2.add(button[1]);
			panel2.add(button[2]);
			panel2.add(button[3]);
			panel2.add(buttonMul);
			panel2.add(button[0]);
			panel2.add(buttonClear);
			panel2.add(buttonEqual);
			panel2.add(buttonDiv);

			for(int i=0;i<=9;i++)
			{
				button[i].addActionListener(this);
			}
			buttonAdd.addActionListener(this);
			buttonSub.addActionListener(this);
			buttonMul.addActionListener(this);
			buttonDiv.addActionListener(this);
			buttonEqual.addActionListener(this);
			buttonClear.addActionListener(this);

   	 		fm.setVisible(true);
   	 		fm.setResizable(false);
	   	}

public void actionPerformed(ActionEvent e)
{
	for(int i=0;i<=9;i++)
	{
		if(e.getSource()==button[i])
		{
		  tf1.setText(tf1.getText()+e.getActionCommand());
		}
	}
	if(e.getSource()==buttonClear) //清除键操作
	{
		tf1.setText("");
		NumTmp=NumTmp1=0;
	}
	if(e.getSource()==buttonAdd) // 加法键操作
	  {
		key=1;
		TextTmp=tf1.getText();
		tf1.setText("");
		   NumTmp=Float.parseFloat(TextTmp);
	   }
	if(e.getSource()==buttonSub) // 减法键操作
	  {
		key=2;
		TextTmp=tf1.getText();
		tf1.setText("");
		NumTmp=Float.parseFloat(TextTmp);
	   }
	if(e.getSource()==buttonMul) // 乘法键操作
	  {
		key=3;
		TextTmp=tf1.getText();
		tf1.setText("");
		NumTmp=Float.parseFloat(TextTmp);
	   }
	if(e.getSource()==buttonDiv) // 除法键操作
	  {
		key=4;
		TextTmp=tf1.getText();
		tf1.setText("");
		NumTmp=Float.parseFloat(TextTmp);
	   }
	 if(e.getSource()==buttonEqual) // 等号键操作
	   {
		 TextTmp=tf1.getText();
		 NumTmp1=Float.parseFloat(TextTmp);
		 tf1.setText("");
		 switch(key)
		 {
			 case 1:
			 	tf1.setText(Float.toString(NumTmp+NumTmp1));
			 	break;
			 case 2:
			 	tf1.setText(Float.toString(NumTmp-NumTmp1));
			 	break;
			 case 3:
			 	tf1.setText(Float.toString(NumTmp*NumTmp1));
			 	break;
			 case 4:
			 	if(NumTmp1!=0)
			 		tf1.setText(Float.toString(NumTmp/NumTmp1));
			 	if(NumTmp1==0)
			 		tf1.setText("error");
			 	break;
			 default:
			 	tf1.setText("error");
			 	break;
		 }
	   }

}

public static void main(String args[])
   {
     (new cal()).init();
    }

}
class WinClose extends WindowAdapter
	{
		public void windowClosing(WindowEvent e)
		   {
			   System.exit(0);
		   }
    }

⌨️ 快捷键说明

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