Выбор поля со списком Java Swing и ссылка на другие поля со списком

Вот сценарий: у меня есть таблица в базе данных с 3 столбцами (идентификатор, имя, возраст). Я создал 3 поворотных поля со списком и кнопку, которая отправляет «оператор выбора» в базу данных и заполняет поля со списком с помощью addItem(...).
Теперь я хочу знать, как связать поля со списком, чтобы при выборе значения, скажем, второе поле со списком, которое извлекает «имя», соответствующее значение «возраст» появляется в третьем поле со списком.

Мой ActionEvent для кнопки:

 jComboBox1.addItem(search.getInt("ID"));
 jComboBox2.addItem(search.getString("NAME"));
 jComboBox3.addItem(search.getString("AGE")); 

** search — это набор результатов, который я получаю!

Заранее спасибо.


person kevoroid    schedule 08.09.2011    source источник


Ответы (1)


Вы должны реализовать пользовательскую ComboBoxModel для такие операции.

Вы можете поместить логику вашего выбора в метод setSelectedItem:

public class YourComboBoxModel implements ComboBoxModel{
    public void setSelectedItem(Object anItem){

    }
    public Object getSelectedItem() {...}
    public Object getElementAt(int index){...} 
    public int getSize() {...}
}

и добавьте нужную ComboBoxModel в относительный JComboBox:

YourComboBoxModel model = new YourComboBoxModel();
JComboBox box = new JComboBox();
box.setModel(model);
person Heisenbug    schedule 08.09.2011
comment
+1 за смену моделей; DefaultComboBoxModel может быть достаточно. Похожий пример есть здесь. - person trashgod; 08.09.2011
comment
или stackoverflow.com/questions/6261017/ или stackoverflow.com/questions/6246005/ +1 - person mKorbel; 08.09.2011
comment
Позвольте мне попробовать это и вернуться к вам! Ведь еще в процессе обучения! Tnx - person kevoroid; 09.09.2011