亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? calculator.java

?? 實現了計算器的簡單功能,算自己開始編程的處女作
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
    import java.awt.*;
    import java.lang.*;
    import javax.swing.*;
    import javax.swing.event.*;
    import java.awt.event.*;
    import java.text.DecimalFormat;
public class Calculator implements ActionListener //導入動作監聽接口
 { //設計面板中的單位
  JFrame frame;
  JTextField textAnswer;
  JPanel panel, panel1, panel2, panel3;
  JMenuBar mainMenu;
  JTextField textMemory;
  JLabel labelMemSpace; //labelMemSpace單純做擺設,控制面板的形狀
  JButton buttonBk, buttonCe, buttonC;
  JButton button[];
  JButton buttonMC, buttonMR, buttonMS, buttonMAdd;
  JButton buttonDot, buttonAddAndSub, buttonAdd, buttonSub, buttonMul,
  buttonDiv, buttonMod;
  JButton buttonSqrt, buttonDao, buttonEqual;
  JMenu editMenu, viewMenu, helpMenu;
  JMenuItem copyItem, pasteItem, tItem, sItem, numberGroup, topHelp, aboutCal;
  DecimalFormat df; //設置數據輸出精度
  boolean clickable; //控制當前能否按鍵
  double memoryd; //使用內存中存儲的數字
  int memoryi;
  double vard, answerd; //用來保存double型數據的中間值(vard)和最后結果(answerd)
  short key=-1, prekey=-1; //key用來保存當前進行何種運算,prekey用來保存前次進行何種運算
  String copy; //做復制用
  JTextArea help; //幫助
  JScrollPane scrollHelp;
  
  public Calculator() //構造函數
	{ clickable=true;
	  answerd=0;
	  frame=new JFrame("計算器");
	  df=new DecimalFormat("0.##############"); //設置數據輸出精度(對于double型值)
	  textAnswer=new JTextField(15);
	  textAnswer.setText("");
	  textAnswer.setEditable(false);
	  textAnswer.setBackground(new Color(255, 255, 255));
	  panel = new JPanel();
	  frame.getContentPane().add(panel);
	  panel1 = new JPanel();
	  panel2 = new JPanel();
	  panel.setLayout(new BorderLayout());
	  //設計整個面板
	  mainMenu = new JMenuBar();
	  editMenu = new JMenu("編輯(E)");
	  viewMenu = new JMenu("查看(V)");
	  helpMenu = new JMenu("幫助(H)");
	  copyItem = new JMenuItem("   復制(C) Ctrl+C");
	  copyItem.addActionListener(this);
	  pasteItem = new JMenuItem("   粘貼(V) Ctrl+V");
	  pasteItem.addActionListener(this);
	  editMenu.add(copyItem);
	  editMenu.add(pasteItem);
	  tItem = new JMenuItem("●標準型(T)");
	  tItem.addActionListener(this);
	  sItem = new JMenuItem("   科學型(S)");
	  sItem.addActionListener(this);
	  numberGroup = new JMenuItem("   數字分組(I)");
	  numberGroup.addActionListener(this);
	  viewMenu.add(tItem);
	  viewMenu.add(sItem);
	  viewMenu.add(numberGroup);
	  topHelp = new JMenuItem("  幫助主題(H)");
	  topHelp.addActionListener(this);
	  help = new JTextArea(5, 20);
	  scrollHelp = new JScrollPane(help);
	  help.setEditable(false);
	  help.append("執行簡單計算\n");
	  help.append("1.  鍵入計算的第一個數字.\n");
	  help.append("2.  單擊'+'執行加、'-'執行減、'*'執行乘或'/'執行除.\n");
	  help.append("3.  鍵入計算的下一個數字.\n");
	  help.append("4.  輸入所有剩余的運算符和數字.\n");
	  help.append("5.  單擊'='.\n");                      //77hang
	  aboutCal = new JMenuItem("   關于計算器(A)");
	  aboutCal.addActionListener(this);
	  helpMenu.add(topHelp);
	  helpMenu.add(aboutCal);
	  mainMenu.add(editMenu);
	  mainMenu.add(viewMenu);
	  mainMenu.add(helpMenu);
	  panel.add(mainMenu, BorderLayout.NORTH);
	  panel.add(textAnswer, BorderLayout.CENTER);
	  panel.add(panel1, BorderLayout.SOUTH);
	  panel1.setLayout(new BorderLayout());
	  textMemory = new JTextField(3);
	  textMemory.setEditable(false);
	  textMemory.setBackground(new Color(217, 217, 217));
	  labelMemSpace = new JLabel("                   ");
	  buttonBk = new JButton("Backspace");
	  buttonBk.setForeground(new Color(255, 0, 0));
	  buttonCe = new JButton("CE");
	  buttonCe.setForeground(new Color(255, 0, 0));
	  buttonC = new JButton("C");
	  buttonC.setForeground(new Color(255, 0, 0));
	  buttonBk.addActionListener(this);
	  buttonCe.addActionListener(this);
	  buttonC.addActionListener(this);
	  panel1.add(panel2, BorderLayout.NORTH);
	  panel2.setLayout(new FlowLayout(FlowLayout.RIGHT));
	  panel2.add(textMemory);
	  panel2.add(labelMemSpace);
	  panel2.add(buttonBk);
	  panel2.add(buttonCe);
	  panel2.add(buttonC);
	  panel3 = new JPanel();
	  panel1.add(panel3, BorderLayout.CENTER);
	  button = new JButton[10];
	  for (int i = 0; i < button.length; i++) 
	     {
		button[i] = new JButton(Integer.toString(i));
		button[i].setForeground(new Color(0, 0, 255));
	      }
	  buttonMC = new JButton("MC");
	  buttonMC.setForeground(new Color(255, 0, 0));
	  buttonMR = new JButton("MR");
	  buttonMR.setForeground(new Color(255, 0, 0));
	  buttonMS = new JButton("MS");
	  buttonMS.setForeground(new Color(255, 0, 0));
	  buttonMAdd = new JButton("M+");
	  buttonMAdd.setForeground(new Color(255, 0, 0));
	  buttonDot = new JButton(".");
	  buttonDot.setForeground(new Color(0, 0, 255));
	  buttonAddAndSub = new JButton("+/-");
	  buttonAddAndSub.setForeground(new Color(0, 0, 255));
	  buttonAdd = new JButton("+");
	  buttonAdd.setForeground(new Color(255, 0, 0));
	  buttonSub = new JButton("-");
	  buttonSub.setForeground(new Color(255, 0, 0));
	  buttonMul = new JButton("*");
	  buttonMul.setForeground(new Color(255, 0, 0));
	  buttonDiv = new JButton("/");
	  buttonDiv.setForeground(new Color(255, 0, 0));
	  buttonMod = new JButton("%");
	  buttonMod.setForeground(new Color(0, 0, 255));
	  buttonSqrt = new JButton("sqrt");
	  buttonSqrt.setForeground(new Color(0, 0, 255));
	  buttonDao = new JButton("1/x");
	  buttonDao.setForeground(new Color(0, 0, 255));
	  buttonEqual = new JButton("=");
	  buttonEqual.setForeground(new Color(255, 0, 0));
	  //將所有行為與監聽綁定
	  panel3.setLayout(new GridLayout(4, 6));
	  panel3.add(buttonMC);
	  buttonMC.addActionListener(this);
	  panel3.add(button[7]);
	  button[7].addActionListener(this);
	  panel3.add(button[8]);
	  button[8].addActionListener(this);
	  panel3.add(button[9]);
	  button[9].addActionListener(this);
	  panel3.add(buttonDiv);
	  buttonDiv.addActionListener(this);
	  panel3.add(buttonSqrt);
	  buttonSqrt.addActionListener(this);
	  panel3.add(buttonMR);
	  buttonMR.addActionListener(this);
	  panel3.add(button[4]);
	  button[4].addActionListener(this);
	  panel3.add(button[5]);
	  button[5].addActionListener(this);
	  panel3.add(button[6]);
	  button[6].addActionListener(this);
	  panel3.add(buttonMul);
	  buttonMul.addActionListener(this);
	  panel3.add(buttonMod);
	  buttonMod.addActionListener(this);
	  panel3.add(buttonMS);
	  buttonMS.addActionListener(this);
	  panel3.add(button[1]);
	  button[1].addActionListener(this);
	  panel3.add(button[2]);
	  button[2].addActionListener(this);
	  panel3.add(button[3]);
	  button[3].addActionListener(this);
	  panel3.add(buttonSub);
	  buttonSub.addActionListener(this);
	  panel3.add(buttonDao);
	  buttonDao.addActionListener(this);
	  panel3.add(buttonMAdd);
	  buttonMAdd.addActionListener(this);
	  panel3.add(button[0]);
	  button[0].addActionListener(this);
	  panel3.add(buttonAddAndSub);
	  buttonAddAndSub.addActionListener(this);
	  panel3.add(buttonDot);
	  buttonDot.addActionListener(this);
	  panel3.add(buttonAdd);
	  buttonAdd.addActionListener(this);
	  panel3.add(buttonEqual);
	  buttonEqual.addActionListener(this);
	  frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE);
	  frame.pack();
	  frame.show();
	}
	  //設置各個按鈕行為
  public void actionPerformed(ActionEvent event) 
	{
	  boolean sign = false; //判斷是否是double型數參與運算,是為true,不是為false
	  Object temp = event.getSource();
	  try {
		//如果按下數據按鈕,將按下的按鈕代表的數據插入的當前文本框字符串之后
		for (int i = 0; i <= 9; i++)
		    if (temp == button[i] && clickable == true)
			textAnswer.setText(textAnswer.getText() + Integer.toString(i));
		//按下'.'按鈕時,判斷當前文本框內字符串中含不含'.',如果已含,則不允許再插入'.'
		if (temp == buttonDot && clickable == true) 
		  {
		    boolean isDot = false;
		    if (textAnswer.getText().length() == 0)
			isDot = true;
		    for (int i = 0; i < textAnswer.getText().length(); i++)
			if ('.' == textAnswer.getText().charAt(i))
			  {
			   isDot = true;
			   break;
			   }
			if (isDot == false)
			  textAnswer.setText(textAnswer.getText() + ".");
		  }
		if ( (temp == buttonAdd || temp == buttonSub || temp == buttonMul ||
		      temp == buttonDiv) && clickable == true)
		    {
			//'+'操作
	   		if (temp == buttonAdd) 
			  {
			      switch (prekey)
				   {
				      case 0:
					    answerd += Double.parseDouble(textAnswer.getText());
					    break;
				      case 1:
					    answerd -= Double.parseDouble(textAnswer.getText());
					    break;
				      case 2:
				            answerd *= Double.parseDouble(textAnswer.getText());
					    break;
				      case 3:
					    if (Double.parseDouble(textAnswer.getText()) == 0)
					      {
					        textAnswer.setText("除數不能為零");
						clickable = false;
						}
					    else
						answerd /= Double.parseDouble(textAnswer.getText());
						break;
				      default:
					    answerd = Double.parseDouble(textAnswer.getText());
				     }//chadaozhelile
			      textAnswer.setText("");
	 		      prekey = key = 0;
			    }
			//'-'操作
			if (temp == buttonSub) 
			  {
			    switch (prekey)
				  {
				    case 0:
					  answerd += Double.parseDouble(textAnswer.getText());
	 				  break;
				    case 1:
					  answerd -= Double.parseDouble(textAnswer.getText());
					  break;
				    case 2:
					  answerd *= Double.parseDouble(textAnswer.getText());
					  break;
				    case 3:
					  if (Double.parseDouble(textAnswer.getText()) == 0)
					    {
						textAnswer.setText("除數不能為零");
						clickable = false;
					     }
					  else
						answerd /= Double.parseDouble(textAnswer.getText());
					  break;
				    default:
					  answerd = Double.parseDouble(textAnswer.getText());
				  }
			    textAnswer.setText("");
			    prekey = key = 1;
			   }
		      //'*'操作
		      if (temp == buttonMul)
			{
			  switch (prekey)
				{
				  case 0:
					answerd += Double.parseDouble(textAnswer.getText());
					break;
				  case 1:
					answerd -= Double.parseDouble(textAnswer.getText());
					break;
				  case 2:
					answerd *= Double.parseDouble(textAnswer.getText());
					break;
				  case 3:
					if (Double.parseDouble(textAnswer.getText()) == 0)
					  {
					    textAnswer.setText("除數不能為零");
					    clickable = false;
					   }
					else
					    answerd /= Double.parseDouble(textAnswer.getText());
					break;
				  default:
					answerd = Double.parseDouble(textAnswer.getText());
				}
			textAnswer.setText("");
			prekey = key = 2;
			}
		     //'/'操作
		      if (temp == buttonDiv)
			{
			  switch (prekey) 
			      {
				case 0:
					answerd += Double.parseDouble(textAnswer.getText());
					break;
				case 1:
					answerd -= Double.parseDouble(textAnswer.getText());
					break;
				case 2:
					answerd *= Double.parseDouble(textAnswer.getText());
					break;
				case 3:
					if (Double.parseDouble(textAnswer.getText()) == 0)
					  {
					      textAnswer.setText("除數不能為零");
					      clickable = false;
					   }
					else

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91视频在线看| 国产亚洲午夜高清国产拍精品| 欧美理论在线播放| 久久精品视频一区二区三区| 偷拍自拍另类欧美| av成人动漫在线观看| 欧美成人福利视频| 丝袜国产日韩另类美女| 91日韩一区二区三区| 久久久久国产精品免费免费搜索| 亚洲成人久久影院| 色中色一区二区| 国产精品久久久久久久第一福利 | 欧美日韩中文字幕一区二区| 久久综合九色综合97婷婷女人| 亚洲成在人线在线播放| 91免费观看视频在线| 国产精品久久久久久久久免费相片| 久久不见久久见免费视频1| 欧美日本在线播放| 爽爽淫人综合网网站| 欧美日韩视频专区在线播放| 亚洲精品国产精华液| 99国产精品久久久久久久久久 | 久草在线在线精品观看| 欧美男男青年gay1069videost| 亚洲日本成人在线观看| 成人国产精品免费| 国产精品国产自产拍高清av王其| 国产精品一二三| 欧美国产欧美亚州国产日韩mv天天看完整| 免费在线观看成人| 精品日韩一区二区| 国产麻豆精品久久一二三| 欧美电影免费观看高清完整版 | 床上的激情91.| 国产欧美一区二区精品仙草咪| 国产精品一区在线观看你懂的| 久久精品免费在线观看| 国产91对白在线观看九色| 日本一区二区免费在线| 97久久人人超碰| 亚洲一二三区在线观看| 91精品国产综合久久婷婷香蕉| 奇米精品一区二区三区在线观看一| 日韩你懂的电影在线观看| 国产麻豆视频精品| 亚洲欧美一区二区三区国产精品| 欧美日韩电影一区| 日韩av一区二区三区| 久久影院午夜片一区| 丁香激情综合五月| 夜夜揉揉日日人人青青一国产精品| 欧美日韩精品一区视频| 久久国产精品区| 亚洲天天做日日做天天谢日日欢 | 国产成人精品一区二区三区网站观看| 中文字幕精品一区二区精品绿巨人 | 日韩一区二区免费在线观看| 久久精品国产亚洲一区二区三区| 久久久不卡影院| 99免费精品视频| 亚洲123区在线观看| 欧美mv日韩mv| 91国产丝袜在线播放| 美国毛片一区二区| 一区视频在线播放| 欧美一区二区在线视频| av不卡在线播放| 蜜桃av噜噜一区二区三区小说| 欧美激情在线看| 欧美一区二区三区视频在线观看| 国产成人一级电影| 五月天激情综合网| 国产精品久久久久久久久免费樱桃 | 99久久久国产精品免费蜜臀| 天天色综合天天| 国产精品女主播在线观看| 日韩视频123| 欧美在线视频全部完| 国产福利91精品一区二区三区| 亚洲一区二区精品3399| 国产精品区一区二区三区| 日韩欧美自拍偷拍| 欧美最新大片在线看| 国产高清亚洲一区| 蜜桃视频免费观看一区| 亚洲国产精品久久人人爱| 国产精品毛片无遮挡高清| 日韩免费视频一区二区| 在线成人小视频| 在线观看欧美日本| www.在线欧美| 成人中文字幕在线| 国产一区欧美一区| 久久精品噜噜噜成人88aⅴ| 亚洲一区二区偷拍精品| 国产精品每日更新| 国产精品久久久一本精品 | 亚洲三级电影网站| 中文字幕欧美三区| 日本一区二区三区电影| 国产日韩欧美综合一区| 精品国产髙清在线看国产毛片| 欧美精品久久久久久久多人混战 | 成人丝袜视频网| 狠狠色丁香久久婷婷综合丁香| 蜜桃91丨九色丨蝌蚪91桃色| 国精产品一区一区三区mba桃花| 日本麻豆一区二区三区视频| 午夜欧美视频在线观看| 亚洲成人精品影院| 亚洲国产中文字幕| 性做久久久久久久免费看| 亚洲福利国产精品| 三级不卡在线观看| 青草av.久久免费一区| 蜜桃91丨九色丨蝌蚪91桃色| 久久国产精品第一页| 精品一区二区av| 国产成人午夜片在线观看高清观看| 国产一区二区三区久久久| 国产成人av福利| 91在线免费看| 欧美日韩黄色一区二区| 欧美日韩不卡在线| 精品蜜桃在线看| 国产精品污www在线观看| 亚洲精品日日夜夜| 天天色图综合网| 久久9热精品视频| av在线不卡电影| 欧美日韩高清一区二区| 精品欧美乱码久久久久久| 欧美国产精品一区| 一区二区三区免费网站| 午夜精品一区二区三区三上悠亚| 日韩电影在线一区| 国产成人免费高清| 色偷偷一区二区三区| 日韩欧美专区在线| 国产精品欧美一级免费| 亚洲午夜电影在线| 国产精品一区免费在线观看| 色综合久久中文综合久久牛| 91精品国产91综合久久蜜臀| 国产欧美视频一区二区三区| 亚洲成在线观看| 国产福利一区二区| 欧美日韩一区二区三区不卡 | 欧美丰满少妇xxxxx高潮对白| 久久一区二区视频| 亚洲资源在线观看| 国产风韵犹存在线视精品| 欧美在线免费观看视频| 久久网这里都是精品| 亚洲第一激情av| 成人动漫在线一区| 日韩一区二区三区电影在线观看 | 国产在线视频精品一区| 在线视频国产一区| 国产清纯在线一区二区www| 亚洲午夜三级在线| 99免费精品在线观看| 精品美女在线观看| 亚洲成人av资源| 91久久精品网| 国产清纯美女被跳蛋高潮一区二区久久w| 一级日本不卡的影视| 成人一区在线观看| 久久久久久久久久久久电影| 亚洲成人av中文| 色嗨嗨av一区二区三区| 国产色一区二区| 国内精品伊人久久久久av影院| 欧美色综合网站| 亚洲欧美另类久久久精品| 国产大陆a不卡| 久久久久久久久伊人| 日韩电影一二三区| 久久综合色播五月| 免费观看久久久4p| 欧美精品三级日韩久久| 亚洲在线视频网站| 91精彩视频在线| 一区二区三区四区激情| 成人免费电影视频| 国产精品三级av| 成人国产视频在线观看| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 97精品国产露脸对白| 久久久综合精品| 国内精品伊人久久久久av影院 | 亚洲免费三区一区二区| 国产成人啪免费观看软件 | 日韩精品一区在线观看| 日韩中文字幕麻豆| 5858s免费视频成人| 蜜桃精品视频在线观看| 欧美一区二区三区免费在线看 |