Atualizar comboBox

3 respostas
couta

e aii galera…

gostaria de melhorar um sistema nos botoes do comboBox,
tenho dois botoes, queria que dependendo do item selecionado do ComboBox_1, os itens do comboBox_2 viesse apenas os que tem relaçao com o item selecionado do comboBox_1…

para entender melhor… o ComboBox_1 os itens dele sao veiculos, como moto,carro,caminhao,onibus,carreta… e o comboBox_2 são os motoristas…
mas nem todos os motoristas podem dirigir todas as categorias…entao…nao faz sentido eu selecionar um caminhao e o motorista “joao” que tem apenas a carteira “AB” que é para carro e moto aparecer para o caminhao…queria que listasse apenas os motoristas que realmente tem a carteira para tal…

como o sistema esta hj, os botoes vem com todos os itens do BD…
abaixo o codigo atual…

public void comboBOX() throws SQLException, ClassNotFoundException, FileNotFoundException, IOException, BaflException{
    
        Connection conn = sd.getConnection();
            Statement stmt = conn.createStatement();
            int seq=0;
            ResultSet rset,rset2,rset3;
           String saida="";
           String posto="";
           int ind=0;
            rset2 = stmt.executeQuery("SELECT max(codigo) AS codigo FROM militar");
            if(rset2.next()){
                seq = rset2.getInt("CODIGO");
            }
           
            rset = stmt.executeQuery("SELECT pg.graduacao, m.nome FROM militar as m, postograduacao as pg WHERE pg.codigo = m.codigoGraduacao AND m.status = 'DISPONIVEL' ORDER by m.CodigoGraduacao,m.nome");

            for(int i=0;i<seq;i++){
                if(rset.next()){
                    saida=rset.getString("nome");
                    posto = rset.getString("graduacao");
                    saida = posto+"-"+saida;

                                           jComboBox2_MILITAR.addItem(saida);

                                      

                }

            }
            rset2 = stmt.executeQuery("SELECT max(codigo) AS codigo FROM viatura");
            if(rset2.next()){
                seq = rset2.getInt("CODIGO");
            }
            rset = stmt.executeQuery("select * from viatura WHERE status = 'DISPONIVEL' AND statusMecanica ='DISPONIVEL' AND EmCarga = 'SIM' ORDER by modelo");
            for(int i=0;i<seq;i++){
                if(rset.next()){
                    saida=rset.getString("modelo")+"_"+rset.getString("regfab");
                    viatura=rset.getString("regfab");
                    jComboBox1_VIATURA.addItem(saida);

                }

            }


           

    }

3 Respostas

WendersonLP

Primeiro remova todos os items contidos no JComboBox e depois adicione os novos items.

couta

blz…mas digamos entao…que o comboBox_Militar esteja vazio…

eu quero que ele preencha autmaticamente logo apos que algum item do comboBox_Viatura seja selecionado e preenche o comboBox que esta vazio de acordo com o item selecionado…

qual seria o evento que teria q fazer para atualizar o outro combobox?

evertonsilvagomesjav

ItemStateChanged

Criado 22 de abril de 2010
Ultima resposta 22 de abr. de 2010
Respostas 3
Participantes 3