以下是该场景:我在数据库中有一个包含3列(id,name,age)的表。我创建了3个swing组合框和一个向数据库发送“select语句”的按钮,并用addItem(...)
填充组合框。
现在我想知道如何链接组合框,这样当我选择一个值时,即第二个组合框取出“name”,相应的“age”值出现在第三个组合框中。
按钮的我的ActionEvent:
jComboBox1.addItem(search.getInt("ID"));
jComboBox2.addItem(search.getString("NAME"));
jComboBox3.addItem(search.getString("AGE"));
** search
是我获得的ResultSet!
提前致谢。
答案 0 :(得分:3)
您应该为此类操作实施自定义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);