Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - Docs

#1
Bueno, poniéndonos en contexto, me pidieron en la universidad que hiciera un programa con dos combobox que cuando presionara y seleccionara una de las opciones del primer combobox  el segundo combobox desplegara otras y que las opciones de este segundo combobox cambiaran dependiendo de  que se haya seleccionado en el primer combobox ( por cierto este programa esta ligado a una base de datos pero no tengo problemas con ella).

P.D: el lenguaje que uso es java.

los problemas que tengo son :

1°- cuando selecciono una opccion del primer combobox no hay problema, pero cuando veo las opciones del segundo combobox aparecen duplicadas (por ejemplo: elijo un país cualquiera (Chile por ejemplo) en el primer combobox y en el segundo me deverian aparecer dos ciudades (Concepcion y Temuco por ejemplo ), pero sin embargo en el segundo aparece (Concepcion,Temuco  y denuevo aparece Concepcion,Temuco) y este problema viene de la mano con el 2°.

2°-Y por ultimo cuando cambio las opciones del primer combobox, las opciones del segundo combobox no cambian, se quedan ahí.

Si alguien me pudiera ayudar le estaré muy agradecido.

Muchas gracias por su atención.

Aqui dejo la parte que me esta causando problemas:

    private void pais_cbxItemStateChanged(java.awt.event.ItemEvent evt) {                                         
        String nombre,nombre_ciudad;
        String id;
        int _id = 0;
        nombre = (String) this.pais_cbx.getSelectedItem();//extraer valor
        try {
            String query = "select*from pais WHERE Nombre_Pais='" + nombre + "'";
            Class.forName("com.mysql.jdbc.Driver");
            Connection conx = DriverManager.getConnection("jdbc:mysql://localhost/asd", "root", "inacap2018");//direccion del servidor
            Statement s = conx.createStatement();
            ResultSet rs = s.executeQuery(query);
            while (rs.next())//recoger bolsa
            {

                _id = rs.getInt(1);
                id = String.valueOf(_id);

            }
             query="select Nombre_Ciudad from ciudad where ID_Pais="+_id;
       
             rs=s.executeQuery(query);
                while (rs.next())
            {

                nombre_ciudad=rs.getString(1);
                System.out.println(nombre_ciudad);
                this.Ciudad_cbx.addItem(nombre_ciudad);
                System.out.println(nombre_ciudad);

            }
        } catch (Exception e) {
            System.out.println("Error");
            System.out.println(e.getMessage());
        }

    }