資源簡介
功能簡述:提供3種飲料;硬幣僅支持50分或100分1枚,其他硬幣值不接受;投入50分硬幣,選擇的飲料正好有庫存,提示“請取飲料”,否則提示“目前該飲料已經售完。”;若投入100分硬幣,在上一種情況的基礎上,還需檢查是否機內存有50分硬幣,如有則提示“請取飲料,并取回找錢。”,否則提示“對不起,目前不能找錢,請投5角硬幣。”;購買成功,需將該飲料庫存減少一。

代碼片段和文件信息
import?java.awt.*;
import?java.awt.event.*;
import?javax.swing.*;
import?javax.swing.border.*;
public?class?SaleGUI?extends?Jframe?{
private??JPanel?p1?=?null;??//放置標簽及輸入框
private??JPanel?p2?=?null;??//放置3個按鈕
private??JPanel?p3?=?null;??//放置1個標簽提示“取走飲料”
private??JTextField?jtf?=?null;??//輸入硬幣數
private??JLabel?jlb?=?null;??//remind?people?to?input?input?the?money
private??JLabel?jlb1?=?null;??//提示“取走飲料”
private??JButton?jbtOrange?=?null;
private??JButton?jbtBeer?=?null;
private??JButton?jbtCoffee?=?null;
private?int?OrangeNum?=?3;?//記錄橙汁的存貨量
private?int?BeerNum?=?3;??//記錄啤酒的存貨量
private?int?CoffeeNum?=?0;??//記錄咖啡的存貨量
private?int?coin50?=?5;??//記錄售貨機的50分硬幣數目
private?int?coin100?=?3;??//記錄售貨機的100分硬幣數目
public?SaleGUI(){
//create?a?line?border
Border?lineBorder?=?new?LineBorder(Color.GRAY2);
//create?a?panel?to?hold?a?text?field
p1?=?new?JPanel(new?BorderLayout());
jlb?=?new?JLabel(“投幣口:“);
jtf?=?new?JTextField(5);
//set?default?value?of?text?field
jtf.setText(“0“);
//register?action?listener?for?JTextField
jtf.addActionListener(new?ActionListener(){
public?void?actionPerformed(ActionEvent?e)?{
jtf.requestFocusInWindow();
}
});
//set?line?border?for?panel?p1
p1.setBorder(lineBorder);
//add?text?field??into?panel?p1
p1.add(jlbBorderLayout.WEST);
p1.add(jtfBorderLayout.CENTER);
//panel?p2?holds?three?buttons
p2?=?new?JPanel(new?GridLayout(13));
ImageIcon?image1?=?new?ImageIcon(“d:\\yiyu\\workspace\\SaleMachine\\src\\gui.icon\\orange.jpg“)?;
ImageIcon?image2?=?new?ImageIcon(“d:\\yiyu\\workspace\\SaleMachine\\src\\gui.icon\\beer.jpeg“);
ImageIcon?image3?=?new?ImageIcon(“d:\\yiyu\\workspace\\SaleMachine\\src\\gui.icon\\coffee.jpeg“);?
//設置圖片尺寸
jbtOrange?=?new?JButton(“Orange?juice?:50?cent“image1);
jbtBeer?=?new?JButton(“Beer?:50?cent“image2);
jbtCoffee?=?new?JButton(“Coffee?:100?cent“image3);
//register?action?listener
jbtOrange.addActionListener(new?ActionListener()?{
public?void?actionPerformed(ActionEvent?e){
String?str?=?null;
//獲取用戶投進的硬幣
String?s?=?jtf.getText();
int?money?=?Integer.parseInt(s);
if(?money?>?0?&&?checkCoin(money)?)?{//已投幣
/*判斷投入的是5角還是1元硬幣*/
str?=?alternativeBuyOrange(money);???
if(str.equals(“可以售出“))?{//投入硬幣幣種正確,進行售出
SaleMachine?client?=?new?SaleMachine();
String?back?=?client.buy(“Orange“?money);
/*修改售貨機內的硬幣數以及飲料庫存量*/
if(back.equals(“請取走飲料!“))?{
/*投入的幣種是5角,售貨機中5角硬幣數量加1*/
setCoin50(getCoin50()?+?1);????
/*修改飲料庫存*/
setOrangeNum(getOrangeNum()?-?1);
}
else?{
/*投入的幣種是1元,售貨機中5角硬幣數量減1,1元硬幣數量加1*/
setCoin50(getCoin50()?-?1);
setCoin100(getCoin100()?+?1);
/*修改飲料庫存*/
setOrangeNum(getOrangeNum()?-?1);
}
jlb1.setText(back);???//提示客戶購買信息
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????377??2011-05-12?22:32??SaleMachine\.classpath
?????文件????????387??2011-05-07?12:06??SaleMachine\.project
?????文件????????473??2011-05-07?12:09??SaleMachine\src\TestSaleMachine.java
?????文件????????559??2011-05-07?14:12??SaleMachine\src\SaleMachine.java
?????文件??????10256??2011-05-07?12:15??SaleMachine\src\SaleGUI.java
?????文件???????4897??2011-05-07?12:06??SaleMachine\src\gui.icon\beer.jpeg
?????文件???????9295??2011-05-07?12:06??SaleMachine\src\gui.icon\coffee.jpeg
?????文件??????20202??2011-05-07?12:06??SaleMachine\src\gui.icon\orange.jpg
?????文件??????20202??2011-05-07?12:06??SaleMachine\bin\gui.icon\orange.jpg
?????文件???????9295??2011-05-07?12:06??SaleMachine\bin\gui.icon\coffee.jpeg
?????文件???????4897??2011-05-07?12:06??SaleMachine\bin\gui.icon\beer.jpeg
?????文件????????905??2011-05-12?22:51??SaleMachine\bin\TestSaleMachine.class
?????文件????????794??2011-05-12?22:51??SaleMachine\bin\SaleMachineTest.class
?????文件????????812??2011-05-12?22:51??SaleMachine\bin\SaleMachine.class
?????文件???????1871??2011-05-12?22:51??SaleMachine\bin\SaleGUI$3.class
?????文件???????1684??2011-05-12?22:51??SaleMachine\bin\SaleGUI$4.class
?????文件????????717??2011-05-12?22:51??SaleMachine\bin\SaleGUI$1.class
?????文件???????7042??2011-05-12?22:51??SaleMachine\bin\SaleGUI.class
?????文件???????1879??2011-05-12?22:51??SaleMachine\bin\SaleGUI$2.class
?????文件????????629??2011-05-07?12:06??SaleMachine\.settings\org.eclipse.jdt.core.prefs
?????目錄??????????0??2011-05-07?14:14??SaleMachine\src\gui.icon
?????目錄??????????0??2011-05-12?22:51??SaleMachine\bin\gui.icon
?????目錄??????????0??2011-05-07?14:14??SaleMachine\src
?????目錄??????????0??2011-05-07?14:14??SaleMachine\bin
?????目錄??????????0??2011-05-07?14:14??SaleMachine\.settings
?????目錄??????????0??2011-05-07?14:14??SaleMachine
-----------?---------??----------?-----??----
????????????????97173????????????????????26
- 上一篇:JSP程序設計習題答案
- 下一篇:基于JAVA的簡易銀行系統
評論
共有 條評論