【问题标题】:Two comboboxes sync in javajava中两个组合框同步
【发布时间】:2015-02-05 20:28:55
【问题描述】:

我正在用 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());    

            }

            }
        }

【问题讨论】:

  • “当我尝试选择另一家公司时,与员工的第二个组合框不同步”究竟是什么意思?您的意思是在第一个组合框中选择公司后,第二个组合框不会填充与第一个组合框关联的员工吗?
  • 是的,就是这样

标签: java eclipse swing combobox sync


【解决方案1】:

您需要添加一个“侦听”选择更改的侦听器

    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());

                    }
                }
            }
        }
    });

【讨论】:

  • xipo 你 les?让我们试试吧!
猜你喜欢
  • 2013-06-04
  • 1970-01-01
  • 2019-08-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-08
  • 1970-01-01
相关资源
最近更新 更多