Java計(jì)算器試驗(yàn)報(bào)告_第1頁
Java計(jì)算器試驗(yàn)報(bào)告_第2頁
Java計(jì)算器試驗(yàn)報(bào)告_第3頁
Java計(jì)算器試驗(yàn)報(bào)告_第4頁
Java計(jì)算器試驗(yàn)報(bào)告_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

本文格式為Word版,下載可任意編輯——Java計(jì)算器試驗(yàn)報(bào)告

一、目標(biāo):

通過Java程序開發(fā)實(shí)訓(xùn)使學(xué)生把握《面向?qū)ο蟪绦蛟O(shè)計(jì)(Java)》課堂講授的內(nèi)容,靈活運(yùn)用到Java程序的開發(fā)與設(shè)計(jì)中。二、要求:

按時(shí)參與Java程序開發(fā)實(shí)訓(xùn)訓(xùn)練,不得遲到和早退;獨(dú)立完成程序設(shè)計(jì);按要求撰寫實(shí)踐報(bào)告。三、詳細(xì)內(nèi)容:

使用《面向?qū)ο蟪绦蛟O(shè)計(jì)(Java)》課程講授內(nèi)容,編寫一個(gè)簡單的計(jì)算器,要求實(shí)現(xiàn)如下功能:1.進(jìn)行圖形界面設(shè)計(jì)

通過圖形界面設(shè)計(jì),把握Frame類、Panel類、5種布局管理器、文本框、標(biāo)簽及按鈕的使用方法。2.實(shí)現(xiàn)計(jì)算器的基本功能

包括加減乘除四則運(yùn)算、清除結(jié)果等功能。3.實(shí)現(xiàn)計(jì)算器的存儲(chǔ)計(jì)算功能

包括清空、使用清零、退格。和基本運(yùn)算4.類的屬性及所用到的方法布局

布局:

整個(gè)界面(Frame)采用BorderLayout布局P1組件添加到Frame的南部

P1采用默認(rèn)的流式布局添加文本框

P2組件添加到Frame的中部P2采用網(wǎng)格布局四行五列放各種按鈕用到的類:mycalKeyAdapterWindowAdapterMyCal類:mycal類的屬性:

b[];按鈕數(shù)組保存各種按鍵以后放到Panel2中tf;文本匡顯示輸入及運(yùn)算結(jié)果num1,num2,jieguo運(yùn)算數(shù)

charc,ch;運(yùn)算符號(hào),ch為輸入的運(yùn)算符號(hào),c保存ch輸入的“+-*/〞

Panelp1,p2;//兩個(gè)組件p1放文本匡p2放按鈕P2的布局為網(wǎng)格布局5行4列

mycal類的方法:1.構(gòu)造方法:

設(shè)置標(biāo)題;設(shè)置文本框;

文本框中添加匿名內(nèi)置類(KeyAdapter)實(shí)現(xiàn)鍵盤

2

的輸入和運(yùn)算;

將各種組件添加到容器,設(shè)置各種按鍵的顏色;添加WindowListenr監(jiān)聽器設(shè)置關(guān)閉按鈕;

2.Main方法:

新建一個(gè)mycal類;4.actionPerformed方法:設(shè)置按鈕的輸入和運(yùn)算,

當(dāng)按下運(yùn)算數(shù)將其顯示在文本匡中假使之前清零則

將零去除

當(dāng)按下運(yùn)算符將其保存在c中并將文本匡內(nèi)容清空當(dāng)按下等號(hào)判斷字符c的符號(hào)進(jìn)行相應(yīng)的運(yùn)算并將結(jié)果顯示在文本框中。

當(dāng)按下清空按鈕將文本框清空,當(dāng)按下退格按鈕取文本框中字符串的字串刪除一個(gè)符號(hào)。KeyAdapter類:

KeyAdapter類的屬性:mycal類中的屬性

KeyAdapter類的方法:keyPressed()方法當(dāng)鍵盤按下時(shí),判斷鍵盤的輸入當(dāng)為“+-*/〞時(shí)記錄下num1及c;

當(dāng)為〞=〞或“Enter〞時(shí)記錄下num2并將結(jié)果計(jì)算出來keyReleased()方法

3

當(dāng)鍵盤松開時(shí),

假使是按下“+-*/〞后松開將文本框清空

假使是按下“=〞或“Enter〞后松開將計(jì)算結(jié)果顯示在文本框中WindowAdapter類:

WindowAdapter類的屬性:WindowEvente

WindowAdapter類的方法:

windowClosing();設(shè)置關(guān)閉按鈕

、四、源代碼

/*

類mycal繼承Frame實(shí)現(xiàn)了ActionListener接口;

往容器中添加兩個(gè)組件Panel1,Panel2;Panel中放置文本匡,Panel2中放置各種按鍵;文本匡中以匿名內(nèi)置類的方式添加鍵盤監(jiān)聽器實(shí)現(xiàn)鍵盤的輸入及運(yùn)算;

為Panel2中各種按鍵添加動(dòng)作監(jiān)聽器實(shí)現(xiàn)按鍵的輸入及運(yùn)算;

*/

4

importjava.awt.*;importjava.awt.event.*;

classmycalextendsFrameimplementsActionListener{

privateButton[]b;privateTextFieldtf;

privatedoublenum1,num2,jieguo;//運(yùn)算數(shù)privatecharc,ch;//運(yùn)算符Panelp1,p2;//兩個(gè)組件publicmycal(){

setTitle(\p1=newPanel();tf=newTextField(25);

tf.addKeyListener(newKeyAdapter(){//添加鍵盤監(jiān)聽器現(xiàn)鍵盤的輸入及運(yùn)算

publicvoidkeyPressed(KeyEvente){

charch=e.getKeyChar();if(\{}

if(ch=='='|ch==e.VK_ENTER){

num2=Double.parseDouble(tf.getText());num1=Double.parseDouble(tf.getText());c=ch;switch(c){

case'+':jieguo=num1+num2;break;case'-':jieguo=num1-num2;break;case'*':jieguo=num1*num2;break;case'/':jieguo=num1/num2;break;}}

publicvoidkeyReleased(KeyEvente){

charch=e.getKeyChar();if(\{}

if(ch=='='|e.getKeyCode()==e.VK_ENTER)

tf.setText(null);}

5

{tf.setText(Double.toString(jieguo));

}

}

});

p1.add(tf)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論