請您檢查一下我的代碼有什麼問題。這是一個簡單的訂購系統,需要用戶輸入客戶名稱,收銀員姓名,用餐或取出口令和密碼。每次我在組合框中單擊一次吃飯雙打一頓,我選擇文本顯示兩次而不是一次
例如我點擊PM3它顯示:
你是爲了是/是:(豬肉燒烤4個) PM3
PM3(豬肉燒烤4個)
,但它應該是: 你是爲了是/是:(豬肉燒烤4個) PM3
順便說我有2個班,我會展示自己代碼如下。類展會的
代碼:
類ShowOrder的import java.util.Scanner;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Show{
private static String z = "";
private static String w = "";
private static String x = "";
JComboBox combo;
private static String a = "";
public Show(){
String mgaPagkainTo[] = {"PM1 (Paa/ Spicy Paa with Thigh part)","PM2 (Pecho)","PM3 (Pork Barbeque 4 pcs.)","PM4 (Bangus Sisig)","PM5 (Pork Sisig)","PM6 (Bangus Inihaw)","SM1 (Paa)","SM2 (Pork Barbeque 2 pcs.)","Pancit Bihon","Dinuguan at Puto","Puto","Ensaladang Talong","Softdrinks","Iced Tea","Halo-Halo","Leche Flan","Truon Split"};
JFrame frame = new JFrame("Mang Inasal Ordering System");
JPanel panel = new JPanel();
combo = new JComboBox(mgaPagkainTo);
combo.setBackground(Color.gray);
combo.setForeground(Color.red);
panel.add(combo);
frame.add(panel);
combo.addItemListener(new ItemListener(){
public void itemStateChanged(ItemEvent ie){
String str = (String)combo.getSelectedItem();
a = str;
ShowOrder messageOrder1 = new ShowOrder();
messageOrder1.ShowOrderPo();
}
});
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300,250);
frame.setVisible(true);
}
public static void main(String[] args) {
Scanner inp = new Scanner(System.in);
boolean ulitinMoPows = true;
boolean tryAgain = true;
System.out.print("\nInput Customer Name: ");
String customerName = inp.nextLine();
w = customerName;
System.out.print("\nInput Cashier Name: ");
String user = inp.nextLine();
z = user;
do{
System.out.print("\nInput either Dine In or Take Out: ");
String dInDOut = inp.nextLine();
x = dInDOut;
if (x.equals("Dine In") || x.equals("Take Out")){
System.out.print("");
ulitinMoPows = false;
}
else{
JOptionPane.showMessageDialog(null, "Try again! Please input Dine In or Take Out only!","Error", JOptionPane.ERROR_MESSAGE);
ulitinMoPows = true;
System.out.print ("\f");
}
}while(ulitinMoPows);
do{
System.out.print("\nInput password: ");
String pass = inp.nextLine();
if(pass.equals("admin")){
ShowOrder messageShowMenu = new ShowOrder();
messageShowMenu.ShowMenu();
tryAgain = false;
}
if(!pass.equals("admin")){
JOptionPane.showMessageDialog(null, "Try again! Invalid password!","Error Logging-In", JOptionPane.ERROR_MESSAGE);
tryAgain = true;
System.out.print ("\f");
}
}while(tryAgain);
Show j = new Show();
}
public static String kuhaOrder()
{
return a;
}
public static String kuhaUserName()
{
return z;
}
public static String kuhaCustomerName()
{
return w;
}
public static String kuhaSanKainPagkain()
{
return x;
}
}
代碼:正在爲這兩個選擇&取消選擇狀態改變執行兩次
public class ShowOrder {
public void ShowMenu(){
String user = Show.kuhaUserName();
System.out.print("\n\n\t\tCashier: " +user);
String dInDOut = Show.kuhaSanKainPagkain();
System.out.print(" "+dInDOut);
String customerName = Show.kuhaCustomerName();
System.out.print("\n\t\tCustomer Name: " +customerName);
System.out.print("\t\t\t\n\nYour order is/ are: ");
}
public void ShowOrderPo() {
String order = Show.kuhaOrder();
System.out.print("\t\t\t\t\n " +order);
}
}
這個問題讓我很餓。 – vikingsteve 2013-02-25 11:08:43
@vikingsteve好,然後吃先生。我只是想在這裏尋求幫助 – 2013-02-25 11:11:05