private void fillCombo(){
    try {
        Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/MTD","root","");
        PreparedStatement ps = con.prepareStatement("Select * from sa where municipalities ='"  + municipality.getSelectedItem().toString()+ "'");
        ResultSet rs = ps.executeQuery();

        while(rs.next()){
            String mun = rs.getString("Province");
            municipality.addItem(mun);
        }
    }
    catch(Exception e){
        JOptionPane.showMessageDialog(null, e);
    }


我有两个组合框,它们从数据库中获取值。第一个组合(province)来自具有一列的表,该列是省份列表。因此,在province.itemchangedstate上,我希望它相对于combo2municipalities)选择的省份设置combo1province)的值。

Java的新手,固守于此,不知道如何进一步进行。有人可以帮忙吗?

最佳答案

据我说,您的要求是在选择另一个组合框的基础上填充另一个组合框。
喜欢


此示例代码可能适合您。

private void populateDropDownOfEnum(){
        EncDecImageFrame encDecImageFrame = new EncDecImageFrame();

        jComboBox1.setEditable(true);
        String[] jComboBox1Values = getListOfAllEnumNames();
        if (jComboBox1Values != null && jComboBox1Values.length != 0) {
            jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(jComboBox1Values));
        }

        Object item = jComboBox1.getSelectedItem();
        jComboBox2.removeAllItems();
        jComboBox2.setEditable(true);
        String[] enumValuesByEnumNames = getListOfAllEnumValues(
                item.toString(), artifcatoryPathOfJar.getText());
        jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(
                enumValuesByEnumNames));

        jComboBox1.addItemListener(new ItemListener() {
            @Override
            public void itemStateChanged(ItemEvent e) {
                Object item = jComboBox1.getSelectedItem();
                jComboBox2.removeAllItems();
                jComboBox2.setEditable(true);
                String[] enumValuesByEnumNames = getListOfAllEnumValues(
                        item.toString(), artifcatoryPathOfJar.getText());
                jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(
                        enumValuesByEnumNames));

            }
        });

10-07 23:27