Fórum Inserir todos os produtos de um fornecedor especifico em um combobox #521951

04/06/2015

0

Olá galera, estou com problemas de filtrar todos os produtos de um fornecedor especifico e colocá-lo em um combobox.

A situação é a seguinte, assim que abre a janela de compra, terá um combobox para selecionar um dos fornecedores, e assim que esse fornecedor fosse escolhido, no combobox abaixo (de produto) teria que listar no combobox todos os produtos deste fornecedor escolhido.

códigos:

o que utilizo para buscar todos os fornecedores:
 Fornecedor forn = new Fornecedor();
       ArrayList<Fornecedor> dados = forn.findAll();
     for (Fornecedor F1 : dados) {
            cbFornecedor.addItem(F1);
        } 


função findall do fornecedor:

public ArrayList findAll(){
      Conecta con = new Conecta();
        Fornecedor fornecedor;
        ResultSet res = null;
        ArrayList<Fornecedor> forn = new ArrayList<Fornecedor>();
        String query = "select * from fornecedor";
        try {
            res = (ResultSet) con.conexao.createStatement().executeQuery(query);
            while (res.next()){
            fornecedor = new Fornecedor(res.getInt("id_fornecedor"), res.getString("nome"), res.getString("tipo"),res.getLong("telefone"),res.getString("endereco"));
            forn.add(fornecedor);
                    
            }
        } catch (SQLException ex) {
            Logger.getLogger(Fornecedor.class.getName()).log(Level.SEVERE, null, ex);
        }
        return forn;
        
    }



Obrigado desde já
Guilherme Souza

Guilherme Souza

Responder

Post mais votado

05/06/2015

Faça um método findProdutoByFornecedor():

private findProdutoByFornecedor(Fornecedor fornecedor){
    //Produto pelos produtos através do fornecedor e depois popula o comboboxProduto    
}


O método acima popula o comboboxProduto com o fornecedor selecionado. Agora você precisa saber quando chamar este método, que será exatamente quando o comboboxFornecedor mudar, então você deve usar um listener:

comboBoxFornecedor.addItemListener(new ItemListener() {
        public void itemStateChanged(ItemEvent arg0) {
           Fornecedor fornecedorSelecionado = comboBoxFornecedor.getSelectedValue();
           findProdutoByFornecedor(fornecedorSelecionado);
        }
    });

Ronaldo Lanhellas

Ronaldo Lanhellas
Responder

Gostei + 1

Mais Posts

08/06/2015

Guilherme Souza

Olá Ronaldo!

Primeiramente, obrigado por tentar me ajudar.

Em segundo lugar, não entendi o que eu tenho que fazer no primeiro código, poderia ser mais especifico por gentileza?

Obrigado!
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar