Resultset em um combobox

10 respostas
M

Pessoal oi, trazer um resultset no combobox criando e fechando a conexao dentro de uma ação do meu combobox consigo trazer o resultset porem gostaria de inserir o resultset no combobox usando o padrao MVC alguem pode me da uma força? muito obrigado

10 Respostas

M

Ngm ai sabe trazer um resultset em um combobox usando MVC? em uma aplicação desktop?

M

ArrayList al=dao.listarNome();
jcb_nome = new JComboBox(al);

Criei uma dao para fazer a consulta
tentei inserir uma arraylist com a consulta mas n da alguem por favor da uma força?

M

criei um metodo para tentar de outra maneira, consegui inserir o resultset no combo porem cada vez que clico no combobox ele repete o resultset na lista da combobox

public void preencheComboBox(){
        Dao dao = new Dao();
        Bean cli = new Bean();
        ArrayList al = new ArrayList();
        int index = tbProdutos.getSelectedRow();
        int chave = (Integer)tbProdutos.getValueAt(index, 0);
        al = dao.selNome(chave);
        int i = 0;
        while(i<=0){
            cli = (Bean) al.get(i);
            i++;
        }
        jcb_fabricante.addItem(cli.getFabricante());
        i = 1;
    }

OBS: chamo esse metodo no mouseclicked da minha jtable, cada vez que eu clico na lista do combo ele duplica as informacoes do meu combobox!

F

Não entendi bem o que quer fazer com o combobox.
Se toda hora ele carregar denovo os valores, antes de carregar denovo você pode dar um comboBox.RemoveAllItems();
Nessa parte o laço vai sempre repetir uma vez, então ele é descenessário.

int i = 0;  
while(i<=0){  
cli = (Bean) al.get(i);  
i++;  
}
M

coloquei o removeall resolveu um problema mas surgiu um otro, esse metodo meu ele depende de uma linha selecionada para aparecer o rs no combobox e como fazer para aprecer esse mesmo rs sem ter uma linha selecionada pode me da uma força alguem?

M

veja o que tentei

public void preencheComboBox(){
        Dao dao = new Dao();
        Bean cli = new Bean();
        ArrayList al = new ArrayList();
        int chave = 0;
        al = dao.listarF(chave);
        jcb_fabricante.removeAllItems();
        try{
            int i = 0;
            while(i<=0){
                cli = (Bean) al.get(i);
                i++;
            }
            jcb_fabricante.addItem(cli.getFabricante());
        } catch(Exception e) {
            e.printStackTrace();
        }
    }

porem ele lista apenas o primeiro da lista! minha consulta esta assim

select * from F order by nome
M

ele traz apenas o primeiro da lista!

F

Não sei se é isso, mas tenta:

Dao dao = new Dao();
        Bean cli = new Bean();
        ArrayList al = new ArrayList();
        int chave = 0;
        al = dao.listarF(chave);
        jcb_fabricante.removeAllItems();
        jcb_fabricante.addItem(null);
        int i = 0;
        while (i < al.size()) {
            cli = (Bean) al.get(i);
            jcb_fabricante.addItem(cli.getFabricante());
            i++;
        }
M

Perfeito, exatamente isso muito obrigado FORUM GUJ THE BEST!

pedromuyala

Mais conteúdo sobre MVC recomendo acessar este link: http://www.guj.com.br/posts/list/129277.java
Vou adicionar este tópico como referência na lista de links sobre MVC que estão na primeira postagem do link que passei. Espero ter colaborado! :wink:

Criado 25 de abril de 2009
Ultima resposta 19 de out. de 2009
Respostas 10
Participantes 3