Как различать несколько полей со списком #39; в ActionEvent

У меня есть два класса, класс графического интерфейса, который содержит два поля со списком, и класс слушателя, который слушает два поля со списком. Программное обеспечение предназначено для пиццы, а поле со списком предназначено для выбора типа и количества пиццы, я опубликую соответствующий код.

(gui class)
private Listener listen = new Listener();
private JComboBox chooseItem = new JComboBox();
private JComboBox quantity = new JComboBox();
private String[] selection = {"Choose a Pizza","Margherita", "Pepperoni", "Four Seasons", "Chips", "Garlic Bread", "Potato Wedges", "Cocacola", "Orange Juice", "Lemonade"};
private String[] qSelection = {"0","1","2","3","4","5","6","7","8","9","10"};

private void comboBoxs() {
 choosePizza = new JComboBox(selection);
    chooseItem.setSelectedIndex(0);
    panel.add(choosePizza);
    choosPizza.addActionListener(listener);

 quantity = new JComboBox(qSelection);
    quantity.setSelectedIndex(0);
    panel.add(quantity);
    quantity.addActionListener(listener);
}

В классе слушателя я застрял и пока не смог найти решение. Я должен использовать ActionListener, но я не уверен, как я должен различать два поля со списком.

(listener class)

public void actionPerformed(ActionEvent event) {

   if (actionCommand.equals("Confirm")) {
          String q = new String();
          String d = new String();
            d = description;
            q = quantity;
    }

 else {
        JComboBox cbq = (JComboBox)event.getSource();
        String itemNumber = (String)cbq.getSelectedItem();
        getQuantity(itemNumber);

        JComboBox cb = (JComboBox)event.getSource();
        String name = (String)cb.getSelectedItem();
        getItemName(name);
   }
 }

  public String getItemName(String name) {
        description = new String();
        description = name;
        return name;
  }

  public String getQuantity(String itemNumber){
        quantity = new String();
        quantity = itemNumber;
        return itemNumber;
 }

Подводя итог :, когда я выбираю значения в двух JComboBox, я хочу иметь возможность сохранять выбранный элемент JComboBox ChooseItem в строке «описание» и выбранный элемент JComboBox количества в строке «количество».

В настоящее время выбранный элемент JComboBox ChooseItem отображается как оба значения, а количество вообще не отображается. (На самом деле это прогресс, как и прежде, какое бы поле ни использовалось последним, оно появлялось в строке описания, а количество указывало на ноль.)

Все примеры, которые мне удалось найти в Интернете, включают в себя только ActionListener с одним JComboBox, я часами пытался заставить его работать, но безуспешно, я полностью застрял.

0
задан DanMc 26 April 2012 в 10:53
поделиться