JAVA課程設(shè)計(jì)簡(jiǎn)單計(jì)算器_第1頁(yè)
JAVA課程設(shè)計(jì)簡(jiǎn)單計(jì)算器_第2頁(yè)
JAVA課程設(shè)計(jì)簡(jiǎn)單計(jì)算器_第3頁(yè)
JAVA課程設(shè)計(jì)簡(jiǎn)單計(jì)算器_第4頁(yè)
JAVA課程設(shè)計(jì)簡(jiǎn)單計(jì)算器_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 java 課程設(shè)計(jì)簡(jiǎn)單計(jì)算器設(shè)計(jì)系 別專(zhuān) 業(yè)班級(jí)學(xué)號(hào)姓 名目 錄² 課程設(shè)計(jì)題目 p3 ² 課程設(shè)計(jì)簡(jiǎn)介 p3² 課程設(shè)計(jì)源代碼 p3² 課程設(shè)計(jì)運(yùn)行舉例 p9² 課程設(shè)計(jì)心得體會(huì) p11l 課程設(shè)計(jì)題目:簡(jiǎn)單計(jì)算器設(shè)計(jì)l 課程設(shè)計(jì)程序簡(jiǎn)介:能夠進(jìn)行最基本的加、減、乘、除運(yùn)算,是運(yùn)用三個(gè)面板的疊加做出的界面。通過(guò)按鈕來(lái)進(jìn)行簡(jiǎn)易計(jì)算器的各種運(yùn)算,并正確實(shí)現(xiàn)運(yùn)算功能。如果輸入錯(cuò)誤會(huì),程序會(huì)自動(dòng)提示你的輸入錯(cuò)誤。整個(gè)程序?qū)υ捒蚩蓪?shí)現(xiàn)最小化,最大化,關(guān)閉。l 課程設(shè)計(jì)源代碼:import javax.swing.*;import java.io.*;

2、import java.awt.*;import java.awt.event.*;public class counter extends jframe implements actionlistenerjpanel txtpanel,btnpanel,southpanel;/定義三個(gè)面板jtextfield txtinput;/定義文本框jbutton b1,b2,b3,b4,b5,b6,b7,b8,b9,b0,bdes,multiply,divide,add,subtract,clearbtn,equalbtn;/aboutbtn;gridlayout gl;/創(chuàng)建布局double si

3、mpan,hasil;string operasi;public counter()super("calculator cabe");/設(shè)置窗體標(biāo)題txtpanel=new jpanel();/創(chuàng)建面板btnpanel=new jpanel();southpanel=new jpanel();txtinput=new jtextfield(25);/創(chuàng)建文本框txtinput.seteditable(false);/設(shè)置文本框不可編輯txtinput.sethorizontalalignment(jtextfield.right);txtinput.settext(&quo

4、t;");/設(shè)置起始文本框內(nèi)容為空b1=new jbutton("1");/創(chuàng)建按鈕b2=new jbutton("2");b3=new jbutton("3");b4=new jbutton("4");b5=new jbutton("5");b6=new jbutton("6");b7=new jbutton("7");b8=new jbutton("8");b9=new jbutton("9");b0=

5、new jbutton("0");bdes=new jbutton(".");multiply=new jbutton("x");multiply.setfont(new font("gothic",font.bold,20);/設(shè)置畫(huà)筆屬性multiply.setbackground(color.black);/設(shè)置按鈕邊框顏色multiply.setforeground(color.blue);/設(shè)置畫(huà)筆顏色divide=new jbutton("/");divide.setfont(new

6、 font("gothic",font.bold,20);divide.setbackground(color.black);divide.setforeground(color.blue);add=new jbutton("+");add.setfont(new font("gothic",font.bold,20);add.setbackground(color.black);add.setforeground(color.blue);subtract=new jbutton("-");subtract.set

7、font(new font("gothic",font.bold,20);subtract.setbackground(color.black);subtract.setforeground(color.blue);clearbtn=new jbutton("c");clearbtn.setfont(new font("arial",font.italic,16);clearbtn.setbackground(color.black);clearbtn.setforeground(color.green);clearbtn.addac

8、tionlistener(new actionlistener()/實(shí)現(xiàn)清空操作public void actionperformed(actionevent argh)btncancelactionperformed(););equalbtn=new jbutton("=");equalbtn.setfont(new font("arial",font.italic,20);equalbtn.setbackground(color.black);equalbtn.setforeground(color.red);b1.addactionlistener

9、(this);/添加監(jiān)視器b2.addactionlistener(this);b3.addactionlistener(this);b4.addactionlistener(this);b5.addactionlistener(this);b6.addactionlistener(this);b7.addactionlistener(this);b8.addactionlistener(this);b9.addactionlistener(this);b0.addactionlistener(this);bdes.addactionlistener(this);multiply.addact

10、ionlistener(this);divide.addactionlistener(this);add.addactionlistener(this);subtract.addactionlistener(this);equalbtn.addactionlistener(this);getcontentpane().add(txtpanel,borderlayout.north);/設(shè)置面板位置txtpanel.add(txtinput);/添加文本框到txtpanel面板中g(shù)l=new gridlayout(4,4,5,5);/設(shè)置面板布局btnpanel.setlayout(gl);ge

11、tcontentpane().add(btnpanel);/窗體中加入第二個(gè)面板/把下列按鈕加入到btnpanel面板中btnpanel.add(b7);btnpanel.add(b8);btnpanel.add(b9);btnpanel.add(multiply);btnpanel.add(b4);btnpanel.add(b5);btnpanel.add(b6);btnpanel.add(divide);btnpanel.add(b1);btnpanel.add(b2);btnpanel.add(b3);btnpanel.add(add);btnpanel.add(b0);btnpanel

12、.add(bdes);btnpanel.add(equalbtn);btnpanel.add(subtract);getcontentpane().add(southpanel,borderlayout.south);/設(shè)置面板位置southpanel.add(clearbtn);/把clearbtn加入到southpanel面板中setsize(250,300);/設(shè)置窗體初始大小setvisible(true);/設(shè)置窗體可見(jiàn)setlocation(300,200);/設(shè)置初始窗體在屏幕上的位置setdefaultcloseoperation(windowconstants.exit_on

13、_close);/設(shè)置程序的關(guān)閉方式(關(guān)閉窗體時(shí),程序自動(dòng)結(jié)束)public void btncancelactionperformed()/清空文本框內(nèi)容txtinput.settext("");public void actionperformed(actionevent e)tryobject objkcal=e.getsource();/取得按鍵if(objkcal=b1)/如果按下b1,則把文本框中的內(nèi)容置為1txtinput.settext(txtinput.gettext()+"1");elseif(objkcal=b2)txtinput.

14、settext(txtinput.gettext()+"2");elseif(objkcal=b3)txtinput.settext(txtinput.gettext()+"3");elseif(objkcal=b4)txtinput.settext(txtinput.gettext()+"4");elseif(objkcal=b5)txtinput.settext(txtinput.gettext()+"5");elseif(objkcal=b6)txtinput.settext(txtinput.gettext

15、()+"6");elseif(objkcal=b7)txtinput.settext(txtinput.gettext()+"7");elseif(objkcal=b8)txtinput.settext(txtinput.gettext()+"8");elseif(objkcal=b9)txtinput.settext(txtinput.gettext()+"9");elseif(objkcal=b0)txtinput.settext(txtinput.gettext()+"0");elseif

16、(objkcal=bdes)txtinput.settext(txtinput.gettext()+".");else/如果按下的是“+”號(hào)鍵,就是保存原來(lái)文本框內(nèi)容并且清空if(objkcal=add)simpan=double.parsedouble(txtinput.gettext();operasi="plus"txtinput.settext("");elseif(objkcal=subtract)simpan=double.parsedouble(txtinput.gettext();operasi="minus

17、"txtinput.settext("");elseif(objkcal=divide)simpan=double.parsedouble(txtinput.gettext();operasi="bagi"txtinput.settext("");elseif(objkcal=multiply)simpan=double.parsedouble(txtinput.gettext();operasi="kali"txtinput.settext("");else/如果按下“=”號(hào),執(zhí)行以

18、下操作if(objkcal=equalbtn)if(operasi="plus")hasil=simpan+double.parsedouble(txtinput.gettext();txtinput.settext(double.tostring(hasil);elseif(operasi="minus")hasil=simpan-double.parsedouble(txtinput.gettext();txtinput.settext(double.tostring(hasil);elseif(txtinput.equals(txtinput.ge

19、ttext()&&objkcal=subtract)hasil=simpan-double.parsedouble(txtinput.gettext();txtinput.settext(double.tostring(hasil);elseif(operasi="bagi")if(double.parsedouble(txtinput.gettext()=0)joptionpane.showmessagedialog(this, "被除數(shù)不能為0");hasil=simpan/double.parsedouble(txtinput.ge

20、ttext();txtinput.settext(double.tostring(hasil);elseif(operasi="kali")hasil=simpan*double.parsedouble(txtinput.gettext();txtinput.settext(double.tostring(hasil);catch(exception ouch)joptionpane.showmessagedialog(null,"錯(cuò)誤輸入","error",joptionpane.error_message);/異常處理public

21、 static void main(string args)tryuimanager.setlookandfeel ("com.sun.java.swing.plaf.windows.windowslookandfeel");catch(exception e)/異常處理new counter();/創(chuàng)建窗體l 課程設(shè)計(jì)運(yùn)行舉例:運(yùn)行結(jié)果截圖:u 乘法截圖 例如90*80=7200 u 除法截圖1.當(dāng)被除數(shù)為零的時(shí)候程序會(huì)自動(dòng)提示,被除數(shù)不能為零。 例如:6/0 n 加法截圖 例如 5+4=9 如下: 減法截圖:100-90=10.0如下:l 課程設(shè)計(jì)心得體會(huì): 在此次的課

22、程設(shè)計(jì)實(shí)踐中,我學(xué)到了教科書(shū)上沒(méi)有的東西。這次課程設(shè)計(jì),我按照課程設(shè)計(jì)的要求,分塊實(shí)現(xiàn)程序的功能。在實(shí)踐中我遇到許多的問(wèn)題,通過(guò)網(wǎng)上的bbs的交流,和同學(xué)的幫助,最后都克服,最終我成功的完成了這次課程設(shè)計(jì)。從中我充分理解了java面對(duì)對(duì)象的特性,并體會(huì)到j(luò)ava與c語(yǔ)言的不同之處在實(shí)踐的同時(shí),我又從中成長(zhǎng)了許多,特別是在對(duì)程序的編譯和調(diào)試中掌握了許多的技巧和方法,為今后的其他計(jì)算機(jī)語(yǔ)言的學(xué)習(xí)奠定了一定的基礎(chǔ)。總結(jié):(1)通過(guò)編寫(xiě)這個(gè)相對(duì)復(fù)雜的程序,讓我認(rèn)識(shí)解決實(shí)際問(wèn)題前應(yīng)現(xiàn)建立模型,再通過(guò)建立的模型使問(wèn)題簡(jiǎn)單化,從而解決問(wèn)題。(2)這次編寫(xiě)的程序大部分是通過(guò)調(diào)用各包中的方法來(lái)實(shí)現(xiàn)的,這也讓我充

23、分理解了包和類(lèi)調(diào)用的關(guān)系。(3)由于這次編寫(xiě)的程序相對(duì)比較復(fù)雜,所以不能一次性編寫(xiě)、調(diào)試,也由此讓我學(xué)會(huì)把程序分塊,逐個(gè)編寫(xiě)、調(diào)試。 芁薃蚄肂芀螅衿肈艿蒅螂羄羋薇羇袀芇蠆螀腿芆荿羆肅蒞蒁螈羈蒞薄羄袇莄蚆螇芅莃蒆薀膁莂薈裊肇莁蝕蚈羃莀莀袃衿荿蒂蚆膈葿薄袂肄蒈蚇蚄羀蕆莆袀袆蒆蕿蚃芅蒅蟻羈膁蒄螃螁肇蒄蒃羇羃肀薅蝿衿聿蚈羅膇膈莇螈肅膇蒀羃罿膇螞螆羅膆螄蠆芄膅蒄襖膀膄薆蚇肆膃蚈袂羂節(jié)莈蚅袈芁蒀袁膆芁薃蚄肂芀螅衿肈艿蒅螂羄羋薇羇袀芇蠆螀腿芆荿羆肅蒞蒁螈羈蒞薄羄袇莄蚆螇芅莃蒆薀膁莂薈裊肇莁蝕蚈羃莀莀袃衿荿蒂蚆膈葿薄袂肄蒈蚇蚄羀蕆莆袀袆蒆蕿蚃芅蒅蟻羈膁蒄螃螁肇蒄蒃羇羃肀薅蝿衿聿蚈羅膇膈莇螈肅膇蒀羃罿膇螞螆羅膆

24、螄蠆芄膅蒄襖膀膄薆蚇肆膃蚈袂羂節(jié)莈蚅袈芁蒀袁膆芁薃蚄肂芀螅衿肈艿蒅螂羄羋薇羇袀芇蠆螀腿芆荿羆肅蒞蒁螈羈蒞薄羄袇莄蚆螇芅莃蒆薀膁莂薈裊肇莁蝕蚈羃莀莀袃衿荿蒂蚆膈葿薄袂肄蒈蚇蚄羀蕆莆袀袆蒆蕿蚃芅蒅蟻羈膁蒄螃螁肇蒄蒃羇羃肀薅蝿衿聿蚈羅膇膈莇螈肅膇蒀羃罿膇螞螆羅膆螄蠆芄膅蒄襖膀膄薆蚇肆膃蚈袂羂節(jié)莈蚅袈芁蒀袁膆芁薃蚄肂芀螅衿肈艿蒅螂羄羋薇羇袀芇蠆螀腿芆荿羆肅蒞蒁螈羈蒞薄羄袇莄蚆螇芅莃蒆薀膁莂薈裊肇莁蝕蚈羃莀莀袃衿荿蒂蚆膈葿薄袂肄蒈蚇蚄羀蕆莆袀袆蒆蕿蚃芅蒅蟻羈膁蒄螃螁肇蒄蒃羇羃肀薅蝿衿聿蚈羅膇膈莇螈肅膇蒀羃罿膇螞螆羅膆螄蠆芄膅蒄襖膀膄薆蚇肆膃蚈袂羂節(jié)莈蚅袈芁蒀袁膆芁薃蚄肂芀螅衿肈艿蒅螂羄羋薇羇袀芇蠆螀腿芆

25、荿羆肅蒞蒁螈羈蒞薄羄袇莄蚆螇芅莃蒆薀膁莂薈裊肇莁蝕蚈羃莀莀袃衿荿蒂蚆膈葿薄袂肄蒈蚇蚄羀蕆莆袀袆蒆蕿蚃芅蒅蟻羈膁蒄螃螁肇蒄蒃羇羃肀薅蝿衿聿蚈羅膇膈莇螈肅膇蒀羃罿膇螞螆羅膆螄蠆芄膅蒄襖膀膄薆蚇肆膃蚈袂羂節(jié)莈蚅袈芁蒀袁膆芁薃蚄肂芀螅衿肈艿蒅螂羄羋薇羇袀芇蠆螀腿芆荿羆肅蒞蒁螈羈蒞薄羄袇莄蚆螇芅莃蒆薀膁莂薈裊肇莁蝕蚈羃莀莀袃衿荿蒂蚆膈葿薄袂肄蒈蚇蚄羀蕆莆袀袆蒆蕿蚃芅蒅蟻羈膁蒄螃螁肇蒄蒃羇羃肀薅蝿衿聿蚈羅膇膈莇螈肅膇蒀羃罿膇螞螆羅膆螄蠆芄膅蒄襖膀膄薆蚇肆膃蚈袂羂節(jié)莈蚅袈芁蒀袁膆芁薃蚄肂芀螅衿肈艿蒅螂羄羋薇羇袀芇蠆螀腿芆荿羆肅蒞蒁螈羈蒞薄羄袇莄蚆螇芅莃蒆薀膁莂薈裊肇莁蝕蚈羃莀莀袃衿荿蒂蚆膈葿薄袂肄蒈蚇蚄羀蕆

26、莆袀袆蒆蕿蚃芅蒅蟻羈膁蒄螃螁肇蒄蒃羇羃肀薅蝿衿聿蚈羅膇膈莇螈肅膇蒀羃罿膇螞螆羅膆螄蠆芄膅蒄襖膀膄薆蚇肆膃蚈袂羂節(jié)莈蚅袈芁蒀袁膆芁薃蚄肂芀螅衿肈艿蒅螂羄羋薇羇袀芇蠆螀腿芆荿羆肅蒞蒁螈羈蒞薄羄袇莄蚆螇芅莃蒆薀膁莂薈裊肇莁蝕蚈羃莀莀袃衿荿蒂蚆膈葿薄袂肄蒈蚇蚄羀蕆莆袀袆蒆蕿蚃芅蒅蟻羈膁蒄螃螁肇蒄蒃羇羃肀薅蝿衿聿蚈羅膇膈莇螈肅膇蒀羃罿膇螞螆羅膆螄蠆芄膅蒄襖膀膄薆蚇肆膃蚈袂羂節(jié)莈蚅袈芁蒀袁膆芁薃蚄肂芀螅衿肈艿蒅螂羄羋薇羇袀芇蠆螀腿芆荿羆肅蒞蒁螈羈蒞薄羄袇莄蚆螇芅莃蒆薀膁莂薈裊肇莁蝕蚈羃莀莀袃衿荿蒂蚆膈葿薄袂肄蒈蚇蚄羀蕆莆袀袆蒆蕿蚃芅蒅蟻羈膁蒄螃螁肇蒄蒃羇羃肀薅蝿衿聿蚈羅膇膈莇螈肅膇蒀羃罿膇螞螆羅膆螄蠆芄膅蒄襖膀膄薆蚇肆膃蚈袂羂節(jié)莈蚅袈芁蒀袁膆芁薃蚄肂芀螅衿肈艿蒅螂羄羋薇羇袀芇蠆螀腿芆荿羆肅蒞蒁螈羈蒞薄羄袇莄蚆螇芅莃蒆薀膁莂薈裊肇莁蝕蚈羃莀莀袃衿荿蒂蚆膈葿薄袂肄蒈蚇蚄羀蕆莆袀袆蒆蕿蚃芅蒅蟻羈膁蒄螃螁肇蒄蒃羇羃肀薅蝿衿聿蚈羅膇膈莇螈肅膇蒀羃罿膇螞螆羅膆螄蠆芄膅蒄襖膀膄薆蚇肆膃蚈袂羂節(jié)莈蚅袈芁蒀袁膆芁薃蚄肂芀螅衿肈艿蒅螂羄羋薇羇袀芇蠆螀腿芆荿羆肅蒞蒁螈羈蒞薄羄袇莄蚆螇芅莃蒆薀膁莂薈裊肇莁蝕蚈羃莀莀袃衿荿蒂蚆膈葿薄袂肄蒈蚇蚄羀蕆莆袀袆蒆蕿蚃芅蒅蟻羈膁蒄螃螁肇蒄蒃羇羃肀薅蝿衿聿蚈羅膇膈莇螈肅膇蒀羃罿膇螞螆羅膆螄蠆芄膅蒄襖膀膄薆蚇肆膃蚈袂羂節(jié)莈蚅

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論