南郵Java實(shí)驗(yàn)報(bào)告1-綜合圖形界面程序設(shè)計(jì)_第1頁
南郵Java實(shí)驗(yàn)報(bào)告1-綜合圖形界面程序設(shè)計(jì)_第2頁
南郵Java實(shí)驗(yàn)報(bào)告1-綜合圖形界面程序設(shè)計(jì)_第3頁
南郵Java實(shí)驗(yàn)報(bào)告1-綜合圖形界面程序設(shè)計(jì)_第4頁
南郵Java實(shí)驗(yàn)報(bào)告1-綜合圖形界面程序設(shè)計(jì)_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、-實(shí)驗(yàn)報(bào)告 2021/ 2021 學(xué)年 第 2學(xué)期課程名稱JAVA程序設(shè)計(jì)實(shí)驗(yàn)名稱綜合圖形界面程序設(shè)計(jì)實(shí)驗(yàn)時(shí)間2021年6月2日指導(dǎo)單位計(jì)算機(jī)學(xué)院計(jì)算機(jī)系統(tǒng)與網(wǎng)絡(luò)教學(xué)中心指導(dǎo)教師學(xué)生班級(jí)*學(xué)院(系)計(jì)算機(jī)學(xué)院專 業(yè)計(jì)算機(jī)科學(xué)與技術(shù). z-實(shí) 驗(yàn) 報(bào) 告實(shí)驗(yàn)名稱綜合圖形界面程序設(shè)計(jì)指導(dǎo)教師實(shí)驗(yàn)類型上機(jī)實(shí)驗(yàn)學(xué)時(shí)2實(shí)驗(yàn)時(shí)間一、 實(shí)驗(yàn)?zāi)康暮鸵髮W(xué)習(xí)和理解JAVA SWING中的容器,部件,布局管理器和部件事件處理方法。通過編寫和調(diào)試程序,掌握J(rèn)AVA圖形界面程序設(shè)計(jì)的根本方法。二、實(shí)驗(yàn)環(huán)境(實(shí)驗(yàn)設(shè)備)1. PC微型計(jì)算機(jī)系統(tǒng)2. Microsoft Windows操作系統(tǒng)3. SUN Java Dev

2、elopment Kit開發(fā)工具包4. NetBeans開發(fā)工具三、實(shí)驗(yàn)原理及容1.實(shí)驗(yàn)原理:利用JAVA SWING中的容器,部件,布局管理器和部件事件處理方法編寫程序。2.實(shí)驗(yàn)容:設(shè)計(jì)和編寫一個(gè)用于將人民幣轉(zhuǎn)換為等值的美元的程序,界面要求可以輸入人民幣的金額并可以得到轉(zhuǎn)換后的結(jié)果。實(shí) 驗(yàn) 報(bào) 告3.實(shí)驗(yàn)關(guān)鍵代碼:省略了設(shè)計(jì)產(chǎn)生的格式、字體、樣式等代碼,保存主要代碼public class NewJFrame e*tends java*.swing.JFrame private final String s=美元USD, 人民幣Y, 日元JPY, 歐元EUR, 英鎊GBP, 澳元AUD; p

3、rivate final float rate=1,(float)6.88,(float)111.599,(float)0.892,(float)0.778,(float)1.353; private double sum;/兌換后的金額 utton button; public NewJFrame() initponents();private void initponents() jPanel1 = new java*.swing.JPanel(); jLabel1 = new java*.swing.JLabel(); jTe*tField1 = new java*.swing.JTe*

4、tField(); jTe*tField2 = new java*.swing.JTe*tField(); utton1 = new java*.swing.utton(); utton2 = new java*.swing.utton(); oBo*1 = new java*.swing.oBo*(); oBo*2 = new java*.swing.oBo*(); jPanel1.setBorder(java*.swing.BorderFactory.createEtchedBorder(); jLabel1.setTe*t(匯率轉(zhuǎn)換);oBo*1.setModel(new java*.s

5、wing.DefaultboBo*Model(new String 美元USD, 人民幣Y, 日元JPY, 歐元EUR, 英鎊GBP, 澳元AUD );jTe*tField1.setFont(new java.awt.Font(宋體, 0, 18); / NOI18NjTe*tField2.setFont(new java.awt.Font(宋體, 0, 18); / NOI18Nutton1.setTe*t(轉(zhuǎn)換);utton1.addActionListener(new java.awt.event.ActionListener() public void actionPerformed(

6、java.awt.event.ActionEvent evt) utton1ActionPerformed(evt); ); utton2.setTe*t(清零);utton2.addActionListener(new java.awt.event.ActionListener() public void actionPerformed(java.awt.event.ActionEvent evt) utton2ActionPerformed(evt); );oBo*2.setModel(new java*.swing.DefaultboBo*Model(new String 美元USD,

7、人民幣Y, 日元JPY, 歐元EUR, 英鎊GBP, 澳元AUD, );pack(); /button1“轉(zhuǎn)換按鈕功能的實(shí)現(xiàn)private void utton1ActionPerformed(java.awt.event.ActionEvent evt) / TODO add your handling code here: utton button3=(utton) evt.getSource(); java.te*t.DecimalFormat df=new java.te*t.DecimalFormat(*.000000); String te*t=jTe*tField1.getTe*

8、t(); String sum1; int cb* = oBo*1.getSelectedInde*();/記錄下標(biāo) int cb1*=oBo*2.getSelectedInde*(); if(button3=utton1) sum=Float.parseFloat(te*t); if(sum0) sum1=df.format(double)ratecb1*/(double)ratecb*sum); jTe*tField2.setTe*t(sum1); else jTe*tField2.setTe*t(你輸入的金額錯(cuò)誤!); /button2“清零按鈕功能的實(shí)現(xiàn) private void ut

9、ton2ActionPerformed(java.awt.event.ActionEvent evt) / TODO add your handling code here: jTe*tField1.setTe*t(null); jTe*tField2.setTe*t(null);4.實(shí)驗(yàn)結(jié)果:1我的匯率轉(zhuǎn)換器主界面:2測(cè)試輸入結(jié)果頁面:實(shí) 驗(yàn) 報(bào) 告實(shí) 驗(yàn) 報(bào) 告四、實(shí)驗(yàn)小結(jié)包括問題和解決方法、心得體會(huì)、意見與建議等1.通過本次試驗(yàn),我大概理解了JAVA SWING中的容器,部件,布局管理器和部件事件處理方法,學(xué)會(huì)了使用JAVA SWING來設(shè)計(jì)簡(jiǎn)單的java程序。通過編寫調(diào)試程序,也掌握J(rèn)

10、AVA圖形界面程序設(shè)計(jì)的根本方法。本實(shí)驗(yàn)做了屬于自己的第一個(gè)Java匯率轉(zhuǎn)換器,收獲了很多東西,成就感滿滿。2.原來上課時(shí)候沒有認(rèn)真聽講,導(dǎo)致實(shí)驗(yàn)開場(chǎng)做時(shí)存在困難,不知從何下手。通過求教同學(xué)和教師還有網(wǎng)絡(luò)資源,找到了大致思路。雖然最終自己實(shí)踐是還是很多的錯(cuò)誤需要調(diào)試,但是程序成功運(yùn)行時(shí)確實(shí)非常開心。3.此次實(shí)驗(yàn),自己設(shè)計(jì)界面,總體算比擬成功,但是仍有一些小bug使得程序不則完美,比方:可以看到,當(dāng)轉(zhuǎn)換結(jié)果小于1時(shí),計(jì)算機(jī)自動(dòng)省略了0.778000、0.012124中小數(shù)點(diǎn)前面的“0,由于時(shí)間有限,且不影響整體使用效果,就暫時(shí)沒有思考修改這個(gè)問題的解決方法。待有時(shí)間時(shí)將盡力改好這個(gè)問題。4.在設(shè)

11、計(jì)的時(shí)候,不知道怎么不知相對(duì)布局,導(dǎo)致程序運(yùn)行時(shí)小窗口的時(shí)候比擬適宜,一旦放大或者縮小窗口時(shí),容卻不會(huì)相應(yīng)變化,無法實(shí)現(xiàn)響應(yīng)式布局。期待后續(xù)能夠解決這個(gè)問題。5.本次實(shí)驗(yàn),設(shè)計(jì)并不難,畢竟只需要部件拖拽即可實(shí)現(xiàn)設(shè)計(jì)布局。于我而言,難在如何給按鈕增加觸發(fā)事件處理、和如何獲取文本框和復(fù)選按鈕的值并進(jìn)展運(yùn)算。1獲取文本信息:String te*t=jTe*tField1.getTe*t(); sum=Float.parseFloat(te*t); /并轉(zhuǎn)換為可運(yùn)算的數(shù)據(jù)浮點(diǎn)型格式2獲取復(fù)選按鈕信息: int cb* = oBo*1.getSelectedInde*();/記錄下標(biāo) int cb1*=oBo*2.getSelectedInde*();3“轉(zhuǎn)換計(jì)算過程:if(sum0) sum1=df.format(doubl

溫馨提示

  • 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. 人人文庫(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)論