Java自動(dòng)售貨機(jī)-_第1頁(yè)
Java自動(dòng)售貨機(jī)-_第2頁(yè)
Java自動(dòng)售貨機(jī)-_第3頁(yè)
Java自動(dòng)售貨機(jī)-_第4頁(yè)
Java自動(dòng)售貨機(jī)-_第5頁(yè)
已閱讀5頁(yè),還剩3頁(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、import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.awt.Toolkit; public class VendingMachine implements ActionListener /*容器變量的定義*/ JFrame frame ; JPanel panelMain; /自動(dòng)售貨機(jī)的最外面的容器 Box boxControl1; JPanel panelChooseProduct,panelControl2; JPanel panelIn = new JPanel9; JPanel p

2、anelInSouth = new JPanel9; JPanel panelAdvertisement,panelProductout,panelTakeButton,panelTips,panelNull; JPanel panelInserCoin = new JPanel(; /*Label的定義*/ JLabel labelPrice = new JLabel9; JLabel labelAdvertisement,labelProductOut,labelCoinout,labelNull; /*按鈕變量的定義*/ JButton buttonProduct = new JButt

3、on9; /buttonProducti用于顯示商品圖片 JButton buttonTakeProduct,buttonHelp,buttonCopyright,buttonInsertCoin,buttonMoneyBack; JButton buttonQuit; /*/ JTextField textMoneyDisplay; /金額顯示 int storage = 4,4,4,4,4,4,4,4,4; /庫(kù)存量定義,每個(gè)商品的初始庫(kù)存量為4 int price = 1,4,3,2,3,4,2,2,2; /商品價(jià)格定義 int amount,errorcount,occupy; Ima

4、geIcon productImage = new ImageIcon9; /productImage為裝商品圖片對(duì)象的數(shù)組 ImageIcon imageBegin,imageCoinin,imageCoinout; ImageIcon imageNull; /imageNull為售罄后顯示的圖片 ImageIcon adImage; /adImage為裝廣告圖片對(duì)象的數(shù)組 Timer timer; /限時(shí)操作計(jì)時(shí)器 int ptr = 0; int ptr2 = 0; /* 初始化函數(shù) 構(gòu)建圖形用戶界面 */ public VendingMachine( /* 商品選購(gòu)區(qū)界面設(shè)計(jì) pane

5、lChooseProduct為內(nèi)置商品子容器panelIn的中間容器 panelIn內(nèi)含商品圖片,價(jià)格 */ panelChooseProduct = new JPanel(new GridLayout(3,3,5,5; productImage0 = new ImageIcon(image/11.jpg; productImage1 = new ImageIcon(image/12.jpg; productImage2 = new ImageIcon(image/13.jpg; productImage3 = new ImageIcon(image/14.jpg; productImage4

6、 = new ImageIcon(image/15.jpg; productImage5 = new ImageIcon(image/16.jpg; productImage6 = new ImageIcon(image/17.jpg; productImage7 = new ImageIcon(image/18.jpg; productImage8 = new ImageIcon(image/19.jpg; for(int i = 0;i= pricei & storagei 0 ptr2 = 0; if(occupy=0/在取貨口出現(xiàn)用戶購(gòu)買的商品 labelProductOut.setI

7、con(productImagei; occupy+; amount -= pricei; /金額減少 textMoneyDisplay.setText(總金額:¥+String.valueOf(amount+.0; storagei -; /庫(kù)存量減少 if(storagei = 0 buttonProducti.setBackground(Color.red; buttonProducti.setIcon(imageNull; errorcount = 0; /錯(cuò)誤操作次數(shù) 清零 else if(amount = 3 /錯(cuò)誤操作次數(shù)超過(guò)三次(包括三次),系統(tǒng)自動(dòng)退幣,對(duì)話框提示 retur

8、nCoin(; JOptionPane.showMessageDialog(null,您連續(xù)錯(cuò)誤操作三次,系統(tǒng)自動(dòng)退幣!注意取幣,WARNING,JOptionPane.WARNING_MESSAGE; else /提示金額不足 Toolkit.getDefaultToolkit(.beep(; /發(fā)出系統(tǒng)聲音提示 String moneyShortage= 錯(cuò)誤1; /對(duì)話框提示 dialog(moneyShortage; else /連續(xù)錯(cuò)誤操作三次,系統(tǒng)將自動(dòng)退幣 errorcount +; if(errorcount = 3 returnCoin(; JOptionPane.showM

9、essageDialog(null,您連續(xù)錯(cuò)誤操作三次,系統(tǒng)自動(dòng)退幣!注意取幣,WARNING,JOptionPane.WARNING_MESSAGE; else String storageShortage = 錯(cuò)誤2; Toolkit.getDefaultToolkit(.beep(; dialog(storageShortage; /* 提示對(duì)話框方法dialog(String s1 s1為輸入?yún)?shù),以彈出相對(duì)應(yīng)的dialog */ public void dialog(String s1 /提示對(duì)話框方法 if(s1=幫助 /用戶點(diǎn)擊“幫助”按鈕,彈出幫助提示對(duì)話框 String he

10、lp=歡迎使用本自動(dòng)售貨機(jī)!請(qǐng)您按照以下步驟購(gòu)買您所需的商品:n +/幫助提示內(nèi)容 1.在右上角投幣口投入硬幣;n + 2.選擇好您購(gòu)買的商品后,按下購(gòu)買鍵;n + 3.您可以在金額充足的情況下連續(xù)購(gòu)買商品,也可以在續(xù)投硬幣后繼續(xù)購(gòu)買商品; n + 4.請(qǐng)及時(shí)取走窗口貨物以免影響您的正常使用; n + 5.購(gòu)買商品后,請(qǐng)取走余額。 n + 【注意】 請(qǐng)按照系統(tǒng)提示進(jìn)行操作。; JOptionPane.showMessageDialog(null,help,幫助,JOptionPane.INFORMATION_MESSAGE; if(s1=聲明 /用戶點(diǎn)擊“聲明”按鈕,彈出聲明聲明對(duì)話框 Str

11、ing copyright=如果你喜歡本程序,請(qǐng)加入QQ群進(jìn)行經(jīng)驗(yàn)交流!;/聲明內(nèi)容 JOptionPane.showMessageDialog(null,copyright,聲明,JOptionPane.INFORMATION_MESSAGE; if(s1=錯(cuò)誤1 /金額不足提示 String error1= 您的余額不足,請(qǐng)續(xù)投幣后再繼續(xù)使用!; JOptionPane.showMessageDialog(null,error1,提示,JOptionPane.WARNING_MESSAGE; if(s1=錯(cuò)誤2 /缺貨提示 String error2= 該商品已售罄,請(qǐng)您改天再來(lái)購(gòu)買!;

12、JOptionPane.showMessageDialog(null,error2,提示,JOptionPane.WARNING_MESSAGE; if(s1=錯(cuò)誤3 /取貨提示 String error3= 請(qǐng)取走窗口內(nèi)貨物后再購(gòu)買!; JOp tionPane.showMessageDialog(null,error3,提示,JOptionPane.WARNING_MESSAGE; /* 接口實(shí)現(xiàn)的方法actionPerformed(ActionEvent e監(jiān)聽用戶動(dòng)作 根據(jù)不同的事件觸發(fā)源采取相對(duì)應(yīng)的操作 */ public void actionPerformed(ActionEve

13、nt e if(e.getSource( = timer /對(duì)用戶長(zhǎng)時(shí)間未作出有效動(dòng)作,作出警告提示 ptr2+; if(ptr2 = 10 Toolkit.getDefaultToolkit(.beep(; JOptionPane.showMessageDialog(null, 操作超時(shí),系統(tǒng)已退幣, 警告, JOptionPane.WARNING_MESSAGE; returnCoin(; if(e.getSource( = buttonInsertCoin /用戶點(diǎn)擊投幣口投幣操作 inserCoin(; timer.start(; /開始計(jì)時(shí), ptr2 = 0; /標(biāo)志位清零 if(

14、e.getSource( = buttonMoneyBack /用戶退幣操作 returnCoin(; JOptionPane.showMessageDialog(null, 請(qǐng) 取 幣!,提示,JOptionPane.WARNING_MESSAGE;/提示用戶取幣 if(e.getSource( = buttonTakeProduct /用戶取貨操作 if(occupy=0 Toolkit.getDefaultToolkit(.beep(; JOptionPane.showMessageDialog(null, 沒有商品可取!,提示,JOptionPane.WARNING_MESSAGE;/

15、提示用戶該窗口無(wú)貨物 ptr2 = 0; else takeProduct(; if(e.getSource( = buttonHelp /幫助操作 String help = 幫助; dialog(help; if(e.getSource( = buttonCopyright /版權(quán)聲明 String copyright = 聲明; dialog(copyright; if(e.getSource( = buttonQuit /退出系統(tǒng) JOptionPane.showMessageDialog(null, 歡迎下次使用!, 歡迎下次使用, JOptionPane.INFORMATION_MESSAGE; System.exit(0; for(int i = 0;i9;i+ /判斷用戶購(gòu)買哪個(gè)商品 if(e.

溫馨提示

  • 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ù)覽,若沒有圖紙預(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)論