我正在用Java(Eclipse)创建一个应用程序,但我遇到了一个问题..我要两个同步两个组合框..用户从第一个选择一个公司,然后第二个将与所选公司的员工一起..如果我再次选择其他公司,则第二个组合框将充满新选择的公司的员工。我的问题是,当我尝试选择另一家公司时,与员工的第二个组合框不会同步。任何解决方案/建议吗?
拳头代码:
JComboBox comboBox = new JComboBox();
comboBox.setBounds(53, 53, 280, 20);
epiloghEtairiasGiaPanel.add(comboBox);
for(int i=0;i<c.getEtairies().size();i++){
comboBox.addItem(c.getEtairies().get(i).getName());
}
String name = comboBox.getSelectedItem().toString();
秒代码:
for(int i=0;i<c.getEtairies().size();i++){
if(c.getEtairies().get(i).getName().equals(name)){
for(int j=0;j<c.getEtairies().get(i).getErgazomenoi().size();j++){
comboBox_1.addItem(c.getEtairies().get(i).getErgazomenoi().get(j).getSurname());
}
}
}
最佳答案
您需要添加一个“侦听”选择更改的侦听器
comboBox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String name = comboBox.getSelectedItem().toString();
for (int i = 0; i < c.getEtairies().size(); i++) {
if (c.getEtairies().get(i).getName().equals(name)) {
for (int j = 0; j < c.getEtairies().get(i).getErgazomenoi().size(); j++) {
comboBox_1.addItem(c.getEtairies().get(i).getErgazomenoi().get(j).getSurname());
}
}
}
}
});