




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
莆田學(xué)院新工科產(chǎn)業(yè)學(xué)院課程設(shè)計(jì)課程名稱:Java程序設(shè)計(jì)題目:簡(jiǎn)易計(jì)算機(jī)2020年7月1日resultTextField.setText(str2);k5=k5+1;))Listenerdyjt_dy=newListener_dy();Listenerjt=newListener0;Listener_signaljt_signal=newListener_signal();Listener_clearjt_c=newListener_clear();Listener_xiaosjt_xs=newListener_xiaos();button?.addActionListener(jt);button8.addActionListener(jt);button9.addActionListener(jt);button_chu.addActionListener(jt_signal);button4.addActionListener(jt);button5.addActionListener(jt);button6.addActionListener(jt);buttoncheng.addActionListener(jtsignal);buttonl.addActionListener(jt);button2.addActionListener(jt);button3.addActionListener(jt);button_jian.addActionListener(jt_signal);buttonO.addActionListener(jt);buttonDian.addActionListener(jtxs);buttondy.addActionListener(jtdy);button_jia.addActionListener(jt_signal);clearButton.addActionListener(jtc);frame.addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEvcntc){System,exit(0);)});voidcal0{doublea2;doubleb2;Stringc=signal;doubleresult2=0;if(c.equals(〃〃)){resultTextField.setText(''Pleaseinputoperator");}else{if(strl.equals(〃."))strl=〃0.0〃;if(str2.equals(〃.〃))str2=〃0.0〃;a2=Double.valueOf(strl).doubleValue();b2=Double.valueOf(str2).doubleValue();if(c.equals("+〃)){result2=a2+b2;)if(c.equals(〃-")){result2=a2-b2;)if(c.equals("*〃)){result2=a2*b2;)if(c.equals(〃/〃))(if(b2==0){result2=0;}else{result2=a2/b2;}result=((newDouble(result2)).toStringO);resultTextField.setText(result);)}?SuppressWarnings("unused")publicstaticvoidmain(String[]args){try(UIManager.sctLookAndFcel(〃javax.swing,plaf.metal.MctalLookAndFeer');}catch(Exceptione){e.printStackTrace();Calculator415cal=newCalculator415();.結(jié)論分析[£Calculator415.java冷[£Calculator415.java冷[£Calculator415.java冷一。257258259260261262263264[£Calculator415.java冷一。257258259260261262263264265266267-268269270271272273274275276277278279280281282283result=((newDouble(result2)).toStrin^^t也Calculatorresult_TextField.setText(result);^SuppressWarnings("unused")publicstaticvoidmain(String[]args){try(X91?Ld「56二,EOi?UIManager.setLookAndFeeL("javax.swing.|}catch(Exceptione){e.printStackTrace();}Calculator415cal=newCalculator415();本計(jì)算器為計(jì)算量中等,對(duì)函數(shù)要求不太高的人群適用,適合于簡(jiǎn)單計(jì)算數(shù)據(jù)。從一個(gè)簡(jiǎn)單的計(jì)算器就可以看出Java的程序設(shè)計(jì)不是那么簡(jiǎn)單,僅僅是一個(gè)小小的計(jì)算器,就已經(jīng)有很多需要注意的問(wèn)題,一不小心就會(huì)出錯(cuò),還會(huì)有很多地方?jīng)]怎么明白,而計(jì)算器的設(shè)計(jì)是最簡(jiǎn)單的幾個(gè)設(shè)計(jì)其中之一,可見(jiàn),平時(shí)的知識(shí)積累是很重要的。沒(méi)有知識(shí)的積累,再簡(jiǎn)單的東西也不可能設(shè)計(jì)出來(lái)。課程設(shè)計(jì)還讓我們練習(xí)了動(dòng)手能力,使我們平時(shí)學(xué)習(xí)的知識(shí)得以在實(shí)際中應(yīng)用,不會(huì)學(xué)死書(shū),活學(xué)活用,很大程度上提高了我們的能力,對(duì)以后的學(xué)習(xí)、工作、生活也會(huì)有一定的幫助。通過(guò)此次的程序設(shè)計(jì),讓我了解了Java的更多知識(shí),使平時(shí)的知識(shí)可以運(yùn)用,更好的理解了Java這門(mén)課程。.參考文獻(xiàn)格式要求:宋體+TimesNewRoman,小四,行間距L5倍,內(nèi)容參照標(biāo)準(zhǔn)參考文獻(xiàn)格式要求(可查看百度參考文獻(xiàn)格式),如:[1]崇天,禮欣,黃天羽.python語(yǔ)言設(shè)計(jì)基礎(chǔ)[M],北京:高等教育出版社,2014[2]明日科技.python項(xiàng)目案例開(kāi)發(fā)集錦[M].北京:吉林大學(xué)出版社,2011.1.概述設(shè)計(jì)一個(gè)圖形界面的計(jì)算器應(yīng)用程序,完成簡(jiǎn)單的算術(shù)運(yùn)算。通過(guò)對(duì)計(jì)算器的編輯來(lái)檢測(cè)和提升自己的Java編程能力,并最終完成課程設(shè)計(jì)報(bào)告。2.設(shè)計(jì)任務(wù)及要求(1)設(shè)計(jì)任務(wù)利用Java開(kāi)發(fā)一個(gè)可以進(jìn)行簡(jiǎn)單的四則運(yùn)算的圖形化計(jì)算器。具體功能要求如下:1、參考界面設(shè)計(jì)圖如下,允許根據(jù)功能自行設(shè)計(jì)界面。TOC\o"1-5"\h\z.簡(jiǎn)易計(jì)算器一X5.6Clear789/456?11123?,0.=?2、要求計(jì)算器至少能夠?qū)崿F(xiàn)基本的加減乘除運(yùn)算和清空功能。3、Clear按鈕用于實(shí)現(xiàn)全部輸入的清空操作,直接將顯示置零。(2)設(shè)計(jì)要求1、應(yīng)用自己所學(xué)課程知識(shí)完成對(duì)計(jì)算器的基本任務(wù)。2、查閱相關(guān)資料,學(xué)習(xí)和掌握項(xiàng)目中涉及的新知識(shí),提高自學(xué)能力。3、通過(guò)應(yīng)用Java程序編寫(xiě)計(jì)算器來(lái)提升自己對(duì)簡(jiǎn)單的圖形界面有一定的掌握和了解。3.設(shè)計(jì)方案(1)運(yùn)算器的界面制作:這個(gè)簡(jiǎn)單計(jì)算器設(shè)計(jì)是通過(guò)兩個(gè)面板的疊加的界面。(2)計(jì)算器的功能實(shí)現(xiàn):在面板上添加按鈕,并通過(guò)按鈕來(lái)進(jìn)行簡(jiǎn)易計(jì)器的加,減,乘,除基本運(yùn)算。(3)通過(guò)Imagclcon來(lái)實(shí)現(xiàn)在按鈕中添加圖片。(4)通過(guò)繼承JFrame類(lèi)和實(shí)現(xiàn)監(jiān)聽(tīng)器接口ActionListener接口來(lái)完成窗口的布局管理和個(gè)組件相對(duì)應(yīng)的事件。(5)設(shè)計(jì)思維:①定義一個(gè)窗口和一個(gè)容器和兩個(gè)面板來(lái)合理放置組件,第一個(gè)面板用來(lái)存放文本框,第二個(gè)面板用來(lái)存放完成實(shí)現(xiàn)計(jì)算加,減,乘,除四個(gè)基本功能的按鈕,再把兩個(gè)面板放到容器中。②通過(guò)ActionListener來(lái)實(shí)現(xiàn)各個(gè)組件相對(duì)應(yīng)的事件。實(shí)驗(yàn)代碼如下:packagetest1;importjava.awt.importjava.awt.event.importjavax.swing.*;importjava.util.Vector;publicclassCalculator415(Stringstrl=〃0〃;Stringstr2=〃0〃;Stringsignal=〃+”;Stringresult="〃;intkl=1;intk2=1;intk3=1;intk4=1;intk5=1;JButtonstore;?SuppressWarnings(,,rawtypes,/)Vectorvt=newVector(20,10);JFramcframe=newJFrame("Calculator");JTextFieldresult_TextField=newJTextField(result,20);JButtonclear_Button=newJButton("Clear");JButtonbuttonO=newJButton(〃0〃);JButtonbuttonl=newJButton(〃1〃);JButtonbutton2=newJButton(〃2〃);JButtonbutton3=newJButton(〃3〃);JButtonbutton4=newJButton("4");JButtonbutton5=newJButton("5");JButtonbutton6=newJButton("6");JButtonbutton?=newJButton(〃7〃);JButtonbutton8=newJButton("8");JButtonbutton9=newJButton(〃9〃);JButtonbutton_Dian=newJButton(,z./z)JButtonbutton_jia=newJButton(〃+〃);JButtonbutton_jian=newJButton(〃-");JButtonbutton_cheng=newJButton(〃*〃);JButtonbutton_chu=newJButton(〃/〃);JButtonbuttondy=newJButton(〃=");publicCalculator415(){buttonO.setMnemonic(KeyEvent.VK_0);result_TextField.setHorizontalAlignment(JTextField.RIGHT);JPanelpan=newJPanel();pan.setLa)rout(newGridLayout(4,4,5,5));pan.add(button?);pan.add(button8);pan.add(button9);pan.add(buttonchu);pan.add(button4);pan.add(button5);pan.add(button6);pan.add(button_cheng);pan.add(buttonl);pan.add(button?);pan.add(button3);pan.add(buttonjian);pan.add(buttonO);pan.add(button_Dian);pan.add(button_dy);pan.add(button」ia);pan.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));JPanelpan2=newJPanel();pan2.sctLayout(newBordcrLayout());pan2.add(result_TextField,BorderLayout.WEST);pan2.add(clear_Button,BorderLayout.EAST);frame.setLocation(600,600);frame.setResizable(true);frame.getContentPane().setLayout(newBorderLayout());frame.getContentPane().add(pan2,BorderLayout.NORTH);frame.getContentPane0.add(pan,BorderLayout.CENTER);frame,pack();frame.setVisible(true);classListenerimplementsActionListener{?SuppressWarnings("unchecked")publicvoidactionPerformed(ActionEvente){Stringss=((JButton)e.getSource()).getText();store=(JButton)e.getSource();vt.add(store);if(kl==1){if(k3==1){strl=〃”;k5=1;)strl=strl+ss;k3=k3+1;result_TextField.setText(strl);}elseif(kl==2){if(k4=1){str2=〃〃;k5二1;)str2=str2+ss;k4=k4+1;result_TextField.setText(str2);)}}classListcner_signalimplementsActionListcncr{@SuppressWarnings("unchecked")publicvoidactionPerformed(ActionEvente)(Stringss2=((JButton)e.getSource()).getText();store=(JButton)e.getSource();vt.add(store);if(k2=1){kl=2;k5=1;signal=ss2;k2=k2+1;}else{inta=vt.size();JButtonc=(JButton)vt.get(a-2);if(!(c.getTcxtO.equals(〃+〃))&&!(c.getText().equals(z,-/z))&&!(c.getText().equals(〃*〃))&&!(c.getText().equals(〃/")))(cal();strl=result;kl=2;k5=1;k4=1;signal=ss2;)k2=k2+1;//清除鍵的邏輯(Clear)classListener_clearimplements/XctionListener{@SuppressWarnings("unchecked")publicvoidaclionPerformed(ActionEvente){
store=(JButton)e.getSourceO;vt.add(store);k5=1;k2=1;kl=
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中級(jí)會(huì)計(jì)實(shí)務(wù)考試考前復(fù)習(xí)試題及答案
- 賣(mài)房獨(dú)有代理協(xié)議書(shū)
- 合伙管理種植協(xié)議書(shū)
- 培訓(xùn)機(jī)構(gòu)補(bǔ)充協(xié)議書(shū)
- 家居行業(yè)2025年線上線下融合模式創(chuàng)新與行業(yè)監(jiān)管報(bào)告
- 交通設(shè)備制造業(yè)數(shù)字化轉(zhuǎn)型中物聯(lián)網(wǎng)技術(shù)應(yīng)用前景分析報(bào)告
- 公關(guān)活動(dòng)的前期籌備試題及答案
- 小學(xué)目標(biāo)管理評(píng)估匯報(bào)
- 學(xué)校家長(zhǎng)會(huì)流程與內(nèi)容指南
- 玻璃體積血的治療
- 部編版五年級(jí)語(yǔ)文上冊(cè)習(xí)作《-即景》教學(xué)課件
- AQ 1050-2008 保護(hù)層開(kāi)采技術(shù)規(guī)范(正式版)
- 發(fā)貨管理規(guī)范
- DL-T5554-2019電力系統(tǒng)無(wú)功補(bǔ)償及調(diào)壓設(shè)計(jì)技術(shù)導(dǎo)則
- 女生穿搭技巧智慧樹(shù)知到期末考試答案章節(jié)答案2024年南昌大學(xué)
- 大熊貓的介紹
- 正常肝臟CT解剖
- 英語(yǔ)國(guó)家商務(wù)國(guó)情 知到智慧樹(shù)網(wǎng)課答案
- 2024年廣西來(lái)賓高投發(fā)展集團(tuán)有限公司招聘筆試沖刺題(帶答案解析)
- 衛(wèi)生部婦產(chǎn)科診療規(guī)范及指南
- 正畸病例匯報(bào)模板
評(píng)論
0/150
提交評(píng)論