




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassCaextendsJFrameimplementsActionListener(〃***********************************************************************〃標(biāo)準(zhǔn)型計(jì)算器控件鍵鈕staticJFramefl=newJFrame("計(jì)算器");privateStringKEYS[]=privateStringM[]={"”,“MC”,”MR","MS","M+”};privateStringCOM[]={"Backspace",privateJButtonkeys[]=newJButton[KEYS.length];privateJButtoncom[]=newJButton[COM.length];privateJButtonm[]=newJButton[M.length];privateJTextFieldresult,hh,jj;MenuBarmenubarl=newMenuBar();Menuedit=newMenu(M編輯(E)"),view=newMenu("查看(V),help=newMenu("幫助(H)");Menuitemcopy=newMenuitem("復(fù)制(C)”),paste=newMenultem(H粘貼(P),standar=newMenuitem("標(biāo)準(zhǔn)型(T),science=newMenultem("科學(xué)型⑶"),numgroup=newMenultem(u數(shù)字分組(I),helpt=newMenultem("幫助主題(H)"),about=newMenultem("關(guān)于計(jì)算器(A)”);privatebooleanfirstDigit=true;〃判斷第一個(gè)輸入的字符是否是數(shù)字privatedoubleresultNum=0.0zresultNum2=0.0;〃中間結(jié)果privateStringoperator=”=”,co,str;operator2=privatebooleanoperateValidFlag=true;〃***********************************************************************〃科學(xué)性計(jì)算器控件及按鈕staticJFramef2=newJFrame(H科學(xué)計(jì)算器");
privateJTextFieldresult?;privateString[]KON={"sta”,”F-E”「C”MC“,”Ave“,“dms”*xp“,”ln”,”MR“,"Sum“,“sin“,"xAy","log”,”MS”,”s“,”cos”,“xA3”,”n!“,”M+",”Dat“「'tan“廣x八2“,“l(fā)/x“,”pi''};privateString[]KO=(,,7,,;,8,,;,9,,/7,,;,Mod,,;,And,,/privateStringITM[]={”標(biāo)準(zhǔn)型“,“科學(xué)型“,”十六進(jìn)制數(shù)(H)F5”,”十進(jìn)制(D)F6",”八進(jìn)制(O)F7”,"二進(jìn)制⑻F8","四字(Q)F12";,DW0RD值(R)F2'7,單字(W)F3";'字節(jié)(Y)F4”,“數(shù)字分組(I廣};privatefinalString[]COMM=("Backspace",,,CE,,/,,C11);privateJButtoncomm[]=newJButton[COMM.length];privateJButtonkon[]=newJButton[KON.length];privateJButtonko[]=newJButtonfKO.length];privateMenuitemitm[]=newMenultem[ITM.length];privateJPanelpanel。,panell,panel2,panel3,panel4,panel5,panel6;Checkboxcheckboxl,checkbox2,checkbox3,checkbox%MenuBarmenubar2=newMenuBar();〃添加菜單條Menuedit2=newMenu("編輯(E)"),view2=newMenu(”查看(V)1'),help2=newMenu(H幫助(H)n);Menuitemcopy2=newMenultem(n復(fù)制(C)Ctrl+C"),past2=newMenultem(H粘貼(P)Ctrl+V"),standar2=newMenultem("標(biāo)準(zhǔn)型⑴”),science2=newMenultem("科學(xué)型(S)"),numgroup2=newMenultem(u數(shù)字分組(I)"),menuiteml=newmenuitem2=newmenuitem3=newmenuitem4=newmenuitem5=newmenuitem6=newmenuitem7=newMenultemf十六進(jìn)制數(shù)(H)F5"),Menuitem("十進(jìn)制(D)F6"),Menultem("八進(jìn)制(0)F7"),Menuitem(”二進(jìn)制(B)F8”),Menultem("四字(Q)F12"),Menultem(nDWORD值(R)F2I,)/Menultemf1單字(W)F3,,)/
menuitem8=newMenultem(”字節(jié)(Y)F4"),helpt2=newMenultem(u幫助主題(H廣),about2=newMenultem(H關(guān)于計(jì)算器(A)");//***********************************************************************〃構(gòu)造函數(shù)menuiteml=newmenuitem2=newmenuitem3=newmenuitem4=newmenuitem5=newmenuitem6=newmenuitem7=new//*publicCa()〃標(biāo)準(zhǔn)型開始初始化********************〃標(biāo)準(zhǔn)型開始初始化********************result=newJTextField(,,O.H);result.setHorizontalAlignment(JTextField.RIGHT);〃文字右對(duì)齊result.setEditable(false);〃設(shè)置為不可編輯result.setBackground(Color.WHITE);〃設(shè)置顏色為白色JPanelkO=newJPanel();k0.setLayout(newGridLayout(4,5,5/5));for(inti=0;i<KEYS.Iength;i++){keys[i]=newJButton(KEYS[i]);kO.add(keys[i]);keys[i].setForeground(Color.blue);)keys[3].setForeground(Color.red);keys[8].setForeground(Color.red);keys[13].setForeground(Color.red);keys[18].setForeground(Color.red);keys[19].setForeground(Color.red);JPanelcO=newJPanel();c0.setLayout(newGridLayout(135,5));for(inti=0;i<COM?length;i++){com[i]=newJButton(COM[i]);c0.add(com[i]);com[i].setForeground(Color.red);)JPanelmO=newJPanel();m0.setLayout(newGridLayout(5,1,5,5));for(inti=0;i<M?length;i++)m[i]=newJButton(M[i]);mO.add(m[i]);m[i].setForeground(Color.red);}m[0].setForeground(Color.black);〃fl的監(jiān)視器for(inti=0;i<KEYS.Iength;i++){keys[i].addActionListener(this);}for(inti=0;i<COM.Iength;i++){com[i].addActionListener(this);}for(inti=0;i<M.length;i++){m[i].addActionListener(this);}〃復(fù)制事件copy.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)(intcount;count=str.length();if(count!=0)co=result.getText();elseSystem.out.println("沒有可復(fù)制的對(duì)象”);}});〃粘貼事件paste.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)str=co;result.setText(str);});〃復(fù)制事件copy2.addActionListener(newActionListener()publicvoidactionPerformed(ActionEvente)(intcount;count=str.length();if(count!=0)co=result2.getText();elseSystem.out.println("沒有可復(fù)制的對(duì)象");}?;〃粘貼事件past2.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente)(str=co;result2.setText(str);}});edit.add(copy);edit.add(paste);view.add(standar);view.add(science);view.addSeparator();view.add(numgroup);help.add(helpt);help.addSeparator();help.add(about);menubarl.add(edit);menubarl.add(view);menubarl.add(help);〃整體布局JPanelpl=newJPanel();pl.setLayout(newBorderLayout());pl.add(l,North,,/cO);pl.add(,,Center,,,kO);JPanelp2=newJPanel();p2.setLayout(newBorderLayout());p2.add("Center",result);fl.setLayout(newBorderLayout(3,5));fl.add(”North”,p2);fl.add(,lCenter,,/pl);fl.add(,lWest,,,mO);fl.setBackground(Color.LIGHT_GRAY);fl.setLocation(200,200);fl.setMenuBar(menubarl);fl.setVisible(true);fl.setResizable(false);//不可最大化fl.pack();〃緊湊fl.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);〃標(biāo)準(zhǔn)型初始化結(jié)束〃****************************************************standar2.addActionListener(newActionListener()(publicvoidactionPerformed(ActionEvente)(fl.setVisible(true);f2.setVisible(false);〃按鈕不可操作}});science.addActionListener(newActionListener()(publicvoidactionPerformed(ActionEvente)(fl.setVisible(false);f2.setVisible(true);//按鈕不可操作}));〃****************************************************〃科學(xué)性初始化開始panelO=newJPanel();panell=newJPanel();panel2=newJPanel();panel3=newJPanel();panel4=newJPanel();panel5=newJPanel();panel6=newJPanel();panel0.setLayout(newGridLayout(l,4));〃設(shè)置網(wǎng)格型布局管理器panell.setLayout(newGridLayout(l,3,30,0));panel2.setLayout(newGridLayout(l,2));panel3.setLayout(newGridLayout(l,3,5,0));panel4.setLayout(newGridLayout(5,5,5,5));panels.setLayout(newGridLayout(5,6,5,5));panel6.setLayout(newFlowLayout(FlowLayout.LEFT));〃按鈕左對(duì)齊result?=newJTextField("O.",lOO);result2.setHorizontalAlignment(JTextField.RIGHT);//文字右對(duì)齊result2.setEditable(false);〃設(shè)置為文本不可編輯result2.setBackground(Color.WHITE);〃設(shè)置文本框顏色為白色CheckboxGroupcbgl=newCheckboxGroup();checkboxl=newCheckbox(H十六進(jìn)制",false,cbgl);checkbox2=newCheckbox(H十進(jìn)制”,true,cbgl);checkbox3=newCheckbox。八進(jìn)制”,false,cbgl);checkbox4=newCheckbox。二進(jìn)制”,false,cbgl);panelO.add(checkboxl);panel0.add(checkbox2);panel0.add(checkbox3);panel0.add(checkbox4);CheckboxGroupcbg2=newCheckboxGroup();panell.add(newCheckbox(H角度,l,true,cbg2));panell.add(newCheckbox(H弧度”,false,cbg2));panell.add(newCheckbox(H梯度”,false,cbg2));兒abelHH=new兒abel(H”);panel2.add(newCheckbox(”lnv",false));panel2.add(newCheckbox("Hyp",false));hh=newJTextField();jj=newJTextField();hh.setText("");hh.setEditable(false);jj.setText("");jj.setEditable(false);panel2.add(hh);panel2.add(HH);panel2.add(jj);panel6.add(result2);edit2.add(copy2);edit2.add(past2);view2.add(standar2);view2.add(science2);view2.addSeparator();view2.add(menuiteml);view2.add(menuitem2);view2.add(menuitem3);view2.add(menuitem4);view2.addSeparator();view2.add(menuitem5);view2.add(menuitem6);view2.add(menuitem7);view2.add(menuitem8);view2.addSeparator();view2.add(numgroup2);help2.add(helpt2);help2.addSeparator();help2.add(about2);menubar2.add(edit2);menubar2.add(view2);menubar2.add(help2);for(inti=0;i<COMM.Iength;i++){comm[i]=newJButton(COMM[i]);panel3.add(comm[i]);comm[i].setForeground(Color.red);}for(inti=0;i<KON.Iength;i++){kon[i]=newJButton(KON[i]);panel4.add(kon[i]);kon[i].setForeground(Color.magenta);}kon[4].setForeground(Color.red);kon[9].setForeground(Color.red);kon[14].setForeground(Color.red);kon[19].setForeground(Color.red);kon[0].setForeground(Color.blue);kon[24].setForeground(Color.blue);kon[5].setForeground(Color.blue);kon[10].setForeground(Color.blue);kon[15].setForeground(Color.blue);kon[20].setForeground(Color.blue);for(inti=0;i<KO?length;i++){ko[i]=newJButton(KO[i]);panels.add(ko[i]);ko[i].setForeground(Color.red);}ko[0].setForeground(Color.blue);ko[l].setForeground(Color.blue);ko[2].setForeground(Color.blue);ko[6].setForeground(Color.blue);ko[7].setForeground(Color.blue);ko[8].setForeground(Color.blue);ko[12].setForeground(Color.blue);ko[13].setForeground(Color.blue);ko[14].setForeground(Color.blue);ko[18].setForeground(Color.blue);ko[19].setForeground(Color.blue);ko[20].setForeground(Color.blue);〃添加監(jiān)視器for(inti=0;i<KON.Iength;i++){kon[i].addActionListener(newca2Actionlistener());}for(inti=0;i<KO.Iength;i++){ko[i].addActionListener(newca2Actionlistener());}for(inti=0;i<COMM.Iength;i++){comm[i].addActionListener(newca2Actionlistener());}checkboxl.addltemListener(newitemListener());checkbox2.addltemListener(newitemListener());checkbox3.addltemListener(newitemListener());checkbox4.addltemListener(newitemListener());JPanelppi=newJPanel();ppl.setLayout(newGridLayout(3,l));ppl.add(panel6);JPanelpp2=newJPanel();pp2.setLayout(newFlowLayout(FlowLayout.LEFT));pp2.add(panel0);pp2.add(newJLabel(H"));pp2.add(panell);ppl.add(pp2);JPanelpp3=newJPanel();pp3.setLayout(newFlowLayout(FlowLayout.LEFT));pp3.add(panel2);pp3.add(new兒abel(H"));pp3.add(panel3);ppl.add(pp3);JPanelpp4=newJPanel();pp4.setLayout(newFlowLayout(FlowLayout.LEFT));JLabelNN=newJLabel(H");f2.setLayout(newGridLayout(2,l));f2.add(ppl);pp4.add(panel4);pp4.add(NN);pp4.add(panel5);f2.add(pp4);f2.setBackground(Color.LIGHT_GRAY);f2.setSize(655,340);f2.setLocation(200,200);f2.setMenuBar(menubar2);f2.setVisible(false);f2.setResizable(false);f2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}〃科學(xué)型初始化結(jié)束〃****************************************************〃標(biāo)準(zhǔn)型監(jiān)聽器publicvoidactionPerformed(ActionEvente){Stringlabel=e.getActionCommand();//獲取事件源的標(biāo)簽if(label.equals(COM[0]))//按BackspacehandleBS();elseif(labeLequals(COM[l]))//按CEresult.setText(HO,1);elseif(labeLequals(COM[2]))//按ChandleC();elseif(labeLequals(M[l]))//按MChandleMC();elseif(labeLequals(M[2]))//按MRhandleMR();elseif(labeLequals(M[3]))//按MShandleMS();elseif(label.equals(M[4]))//按M+handleM();elseif("0123456789.,,.indexOf(label)>=0)//按數(shù)字鍵或者小數(shù)點(diǎn)handleNB(label);else//按運(yùn)算符handleOR(label);)privatevoidhandleBS()//處理Backspace{Stringtext=newString(result.getText());intj=text.length();if(j>0){text=text.substringfOJ?1);if(text.length()==0)(result.setText(”O(jiān)”);firstDigit=true;operator=}else(result.setText(text);}))privatevoidhandleNB(Stringkey)//處理數(shù)字鍵{if(firstDigit){result.setText(key);)elseif((key.equals(,,.,,))&&(result.getText().indexOf(,,.")<0)){result.setText(result.getText()+)elseif(!key.equals(,l.H)){result.setText(result.getText()+key);)firstDigit=false;privatevoidhandleC()〃處理C{result.setTextC'O");firstDigit=true;operator=官;)privatevoidhandleOR(Stringkey)//處理運(yùn)算符{if(operator.equals(,7'1)){if(getNumberFromText()==0.0)(operateValidFlag=false;result.setText("除數(shù)不能是零");}elseresultNum/=getNumberFromText();)elseiffoperator.equalsC'l/x'1)){if(resultNum==0.0)(operateValidFlag=false;result.setText("零沒有倒數(shù)");}elseresultNum=1/resultNum;)elseif(operator.equals(,l+H))resultNum+=getNumberFromText();elseif(operator.equals(,,-,l))resultNum-=getNumberFromText();elseif(operator.equals(,,*,,J)resultNum*=getNumberFromText();elseif(operator.equals(,lsqrtn))resultNum=Math.sqrt(resultNum);/////////elseif(operator.equals(,l%M))resultNum=resultNum/100;elseif(operator.equals(,,+/-M))resultNum=resultNum*(-1);elseif(operator.equals(,,=l1))(resultNum=getNumberFromText();)if(operateValidFlag)//雙精度浮點(diǎn)數(shù)的運(yùn)算{longtl;doublet2;tl=(long)resultNum;t2=resultNum-tl;if(t2==0)(result.setText(String.valueOf(tl));}else(result.setText(String.valueOf(resultNum));}}〃運(yùn)算符等于用戶按的按鈕operator=key;firstDigit=true;operateValidFlag=true;}publicvoidhandleMC()//處理MC,清除內(nèi)存(resultNum=0.0;result.setText(,,OH);m[0].setText(H");firstDigit=true;operator=}publicvoidhandleMR()//處理MR,重新調(diào)用存儲(chǔ)的數(shù)據(jù){if(result.getText()!=,m)〃有記憶數(shù)字(result.setText(,,n+resultNum);}}publicvoidhandleMS()〃處理MS,存儲(chǔ)顯示的數(shù)據(jù)resultNum=Double.valueOf(result.getText()).doubleValue();m[0].setText(,,MH);result.setText(,,OH);firstDigit=true;operator=}publicvoidhandleM()//處理M+,將顯示的數(shù)字與巳經(jīng)存儲(chǔ)的數(shù)據(jù)相加要查看新的數(shù)字單擊MR{resultNum=resultNum+Double.valueOf(result.getText()).doubleValue。;}〃標(biāo)準(zhǔn)型監(jiān)聽器定義部分結(jié)束〃****************************************************〃科學(xué)性監(jiān)聽器定義classitemListenerimplementsItemListener(publicvoiditemStateChanged(ltemEvente)(Checkboxcb=(Checkbox)e.getltemSelectable();//獲取事件源的resetable();〃使按鈕重新可用if(cb.getLabel().equals)"十六進(jìn)制”)){kon[l].setEnabled(false);kon[5].setEnabled(false);kon[6].setEnabled(false);kon[7].setEnabled(false);kon[10].setEnabled(false);kon[ll].setEnabled(false);kon[15].setEnabled(false);kon[16].setEnabled(false);kon[20].setEnabled(false);kon[21].setEnabled(false);kon[24].setEnabled(false);kon[l].setForeground(Color.gray);kon[5].setForeground(Color.gray);kon[6].setForeground(Color.gray);kon[7].setForeground(Color.gray);kon[10].setForeground(Color.gray);kon[ll].setForeground(Color.gray);kon[15].setForeground(Color.gray);kon[16].setForeground(Color.gray);kon[20].setForeground(Color.gray);kon[21].setForeground(Color.gray);kon[24].setForeground(Color.gray);ko[l].setForeground(Color.blue);ko[2].setForeground(Color.blue);ko[24].setForeground(Color.blue);ko[25].setForeground(Color.blue);ko[26].setForeground(Color.blue);ko[27].setForeground(Color.blue);ko[28].setForeground(Color.blue);ko[29].setForeground(Color.blue);ko[0].setForeground(Color.blue);ko[6].setForeground(Color.blue);ko[7].setForeground(Color.blue);ko[8].setForeground(Color.blue);ko[13].setForeground(Color.blue);ko[14].setForeground(Color.blue);elseif(cb.getLabel().equals("十進(jìn)制"))kon[5].setEnabled(false);kon[10].setEnabled(false);kon[15].setEnabled(false);kon[20].setEnabled(false);ko[24].setEnabled(false);ko[25].setEnabled(false);ko[26].setEnabled(false);ko[27].setEnabled(false);ko[28].setEnabled(false);ko[29].setEnabled(false);kon[5].setForeground(Color.gray);kon[10].setForeground(Color.gray);kon[15].setForeground(Color.gray);kon[20].setForeground(Color.gray);ko[24].setForeground(Color.gray);ko[25].setForeground(Color.gray);ko[26].setForeground(Color.gray);ko[27].setForeground(Color.gray);ko[28].setForeground(Color.gray);ko[29].setForeground(Color.gray);ko[l].setForeground(Color.blue);ko[2].setForeground(Color.blue);kon[l].setForeground(Color.magenta);kon[6].setForeground(Color.magenta);kon[7].setForeground(Color.magenta);kon[ll].setForeground(Color.magenta);kon[16].setForeground(Color.magenta);kon[21].setForeground(Color.magenta);kon[24].setForeground(Color.blue);ko[0].setForeground(Color.blue);ko[6].setForeground(Color.blue);ko[7].setForeground(Color.blue);ko[8].setForeground(Color.blue);ko[13].setForeground(Color.blue);ko[14].setForeground(Color.blue);elseif(cb.getLabel().equals("八進(jìn)制"))kon[l].setEnabled(false);kon[5].setEnabled(false);kon[6].setEnabled(false);kon[7].setEnabled(false);kon[10].setEnabled(false);kon[ll].setEnabled(false);kon[15].setEnabled(false);kon[16].setEnabled(false);kon[20].setEnabled(false);kon[21].setEnabled(false);kon[24].setEnabled(false);ko[l].setEnabled(false);ko[2].setEnabled(false);ko[24].setEnabled(false);ko[25].setEnabled(false);ko[26].setEnabled(false);ko[27].setEnabled(false);ko[28].setEnabled(false);ko[29].setEnabled(false);kon[l].setForeground(Color.gray);kon[5].setForeground(Color.gray);kon[6].setForeground(Color.gray);kon[7].setForeground(Color.gray);kon[10].setForeground(Color.gray);kon[ll].setForeground(Color.gray);kon[15].setForeground(Color.gray);kon[16].setForeground(Color.gray);kon[20].setForeground(Color.gray);kon[21].setForeground(Color.gray);kon[24].setForeground(Color.gray);ko[l].setForeground(Color.gray);ko[2].setForeground(Color.gray);ko[24].setForeground(Color.gray);ko[25].setForeground(Color.gray);ko[26].setForeground(Color.gray);ko[27].setForeground(Color.gray);ko[28].setForeground(Color.gray);ko[29].setForeground(Color.gray);ko[0].setForeground(Color.blue);ko[6].setForeground(Color.blue);ko[7].setForeground(Color.blue);ko[8].setForeground(Color.blue);ko[13].setForeground(Color.blue);ko[14].setForeground(Color.blue);}elseif(cb.getLabel().equals)"二進(jìn)制")){kon[l].setEnabled(false);kon[5].setEnabled(false);kon[6].setEnabled(false);kon[7].setEnabled(false);kon[10].setEnabled(false);kon[ll].setEnabled(false);kon[15].setEnabled(false);kon[16].setEnabled(false);kon[20].setEnabled(false);kon[21].setEnabled(false);kon[24].setEnabled(false);ko[l].setEnabled(false);ko[2].setEnabled(false);ko[24].setEnabled(false);ko[25].setEnabled(false);ko[26].setEnabled(false);ko[27].setEnabled(false);ko[28].setEnabled(false);ko[29].setEnabled(false);ko[0].setEnabled(false);ko[6].setEnabled(false);ko[7].setEnabled(false);ko[8].setEnabled(false);ko[13].setEnabled(false);ko[14].setEnabled(false);kon[l].setForeground(Color.gray);kon[5].setForeground(Color.gray);kon[6].setForeground(Color.gray);kon[7].setForeground(Color.gray);kon[10].setForeground(Color.gray);kon[ll].setForeground(Color.gray);kon[15].setForeground(Color.gray);kon[16].setForeground(Color.gray);kon[20].setForeground(Color.gray);kon[21].setForeground(Color.gray);kon[24].setForeground(Color.gray);ko[l].setForeground(Color.gray);ko[2].setForeground(Color.gray);ko[24].setForeground(Color.gray);ko[25].setForeground(Color.gray);ko[26].setForeground(Color.gray);ko[27].setForeground(Color.gray);ko[28].setForeground(Color.gray);ko[29].setForeground(Color.gray);ko[0].setForeground(Color.gray);ko[6].setForeground(Color.gray);ko[7].setForeground(Color.gray);ko[8].setForeground(Color.gray);ko[13].setForeground(Color.gray);ko[14].setForeground(Color.gray);}}}classca2ActionlistenerimplementsActionListener(publicvoidactionPerformed(ActionEvente){StringIabel2=e.getActionCommand();//獲取事件源的標(biāo)簽if(label2.equals(COMM[0]))//按BackspacehandleBS2();elseif(label2.equals(COMM[l]))//按CEresult2.setText(,,0H);elseif(label2.equals(COMM[2]))//按ChandleC2();elseif(label2.equals(KON[4]))//按MChandleMC2();elseif(label2.equals(KON[9]))//按MRhandleMR2();elseif(label2.equals(KON[14]))//按MShandleMS2();elseif(label2.equals(KON[19]))//按M+handleM2();elseif(label2.equals(K0N[ll]))//按sinhandleSI();elseif(label2.equals(KON[12]))〃按xAyhandleYT();elseif(label2.equals(KON[13]))//按loghandleLO();elseif(label2.equals(KON[16]))〃按coshandleCO();elseif(label2.equals(KON[17]))〃按xA3handleTT();elseif(label2.equals(KON[22]))〃按xA2handlePF();elseif(label2.equals(KON[18]))//按n!handleJC();elseif(label2.equals(KON[21]))〃按tanhandleTA();elseif(label2.equals(KON[24]))//按piresult2.setText(M,I+3.141592653);elseif("0123456789.,,.indexOf(label2)>=O)〃按數(shù)字鍵或者小數(shù)點(diǎn)handleNB2(labe12);else//按運(yùn)算符handleOR2(label2);}}〃科學(xué)性監(jiān)聽器定義結(jié)束〃****************************************************〃科學(xué)性計(jì)算器用到的函數(shù)voidresetable()〃使按鈕重新可■用(for(inti=0;i<KON.Iength;i++)kon[i].setEnabled(true);for(inti=0;i<KO.Iength;i++)ko[i].setEnabled(true);}result2.setText(,,0H);firstDigit=true;operator2=)privatevoidhandleBS2()//處理Backspace{Stringtext2=newString(result2.getText());intj2=text2.length();if(j2>0){text2=text2.substring(OJ2-1);if(text2.length()==0)(result?.setText(,,0H);firstDigit=true;operator?=}else(result?.setText(text2);}}}publicvoidhandleMC2()〃處理MC,清除內(nèi)存(resultNum2=0.0;result2.setText(,,0,');jj.setText("");firstDigit=true;operator?=官;}privatevoidhandleNB2(Stringkey)//處理數(shù)字鍵{if(firstDigit){result2.setText(key);}elseif((key.equals(,,."))&&(result2.getText().indexOf(,,.,,)<0))result?.setText(result2.getText()+elseif(!key.equals(,,.H)){result?.setText(result2.getText()+key);}firstDigit=false;}publicvoidhandleMR2()//處理MR,重新調(diào)用存儲(chǔ)的數(shù)據(jù)(if(result2.getText()!=)〃有記憶數(shù)字result2.setText(,,n+resultNum2);}publicvoidhandleMS2()//處理MS,存儲(chǔ)顯示的數(shù)據(jù){resultNum2=Double.valueOf(result2.getText()).doubleValue();result?.setText(HOn);jj.setText(,,M");firstDigit=true;operator?=官;}publicvoidhandleM2()//處理M+,將顯示的數(shù)字與己經(jīng)存儲(chǔ)的數(shù)據(jù)相加要查看新的數(shù)字單擊MR{resultNum2=resultNum2+Double.valueOf(result2.getText()).doubleValue();}publicvoidhandleSI()//sin(doublei=getNumberFromText2();result2.setText(String.valueOf(Math.sin(i)));}publicvoidhandleYT()//Y次方(if(getNumberFromText2()==0.01|getNumberFromText2()==1){resultNum2=getNumberFromText2();}else{for(inti=l;i<=getNumberFromText2();i++)resultNum2*=resultNum2;result?.setText(String.valueOf(resultNum2));)publicvoidhandleLO()〃對(duì)數(shù)(doublei=getNumberFromText2();resultNum2=Math.log(i);result?.setText(String.valueOf(resultNum2));}publicvoidhandleCO()//cos(doublei=getNumberFromText2();resultNum2=Math.cos(i);result?.setText(String.valueOf(resultNum2));}publicvoidhandleTT()//三次方(if(getNumberFromText2()==0.01|getNumberFromText2()==1){resultNum2=getNumberFromText2();)else{resultNum2=getNumberFromText2()*getNumberFromText2()*getNumberFromText2();)result?.setText(String.valueOf(resultNum2));}publicvoidhandlePF()//平方(if(getNumberFromText2()==0.01|getNumberFromText2()==1){resultNum2=getNumberFromText2();)else{resultNum2=getNumberFromText2()*getNumberFromText2();)result?.setText(String.valueOf(resultNum2));)publicvoidhandleJC()//階乘doublei=getNumberFromText2();if((i%2==0)11(i%2==l))//判斷為整數(shù)放進(jìn)行階乘操作{intj=(int)i;//強(qiáng)制類型轉(zhuǎn)換intresultNum2=l;for(intk=l;k<=j;k++)resultNum2*=k;result?.setText(String.valueOf(resultNum2));}else{result2.se
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- (6.2.1)《聲聲慢》解析(一)-朱松苗
- 2025電子產(chǎn)品融資租賃合同書
- 2025橄欖買賣合同書范文
- 2025年婚假期間如何申請(qǐng)解除勞動(dòng)合同
- 2025混凝土結(jié)構(gòu)模板施工勞務(wù)分包合同
- 2025空調(diào)器購銷合同
- 三年級(jí)英語上冊(cè) Projec 2 第2課時(shí)教學(xué)設(shè)計(jì) 牛津譯林版
- 2025年簽訂設(shè)備供應(yīng)合同的關(guān)鍵要點(diǎn)
- 2025海域合作開發(fā)合同樣本
- 2025標(biāo)準(zhǔn)個(gè)人住宅抵押擔(dān)保借款合同
- GB/T 27060-2025合格評(píng)定良好實(shí)踐指南
- 企業(yè)研究方法知到智慧樹章節(jié)測試課后答案2024年秋華東理工大學(xué)
- 公司安全事故隱患內(nèi)部舉報(bào)、報(bào)告獎(jiǎng)勵(lì)制度
- 小區(qū)網(wǎng)球可行性方案
- 社區(qū)衛(wèi)生服務(wù)中心(站)財(cái)務(wù)、藥品、固定資產(chǎn)、檔案、信息管理制度
- 田野考古工作規(guī)程附錄一
- 10x2017對(duì)稱式三輥卷板機(jī)設(shè)計(jì)說明書
- 氣柜施工方案(修改)
- 美國各州的縮寫及主要城市
- 畢業(yè)設(shè)計(jì)(論文)-電話聽筒塑料模具設(shè)計(jì)說明書
- 初始過程能力分析報(bào)告
評(píng)論
0/150
提交評(píng)論