Probleminha!

Fala Amigos, tenho uma classe que tem uma lista de itens, os itens para serem inseridos estão em um combo, depois de inserir o primeiro componente é perguntado se o usuário deseja inserir mais algum item, esse é o botão q insere:

private void insereComponenteActionPerformed(java.awt.event.ActionEvent evt) {
        int opcaoescolhida=0;int i=0;
        obj =  c.buscar(vetc,(String.valueOf(comboNomeComponente.getSelectedItem())));
        comp.inserirListac(obj);
        opcaoescolhida = JOptionPane.showConfirmDialog(null, "Deseja inserir mais Componentes?", "",JOptionPane.YES_NO_OPTION);
        while ((i<30)||(opcaoescolhida==JOptionPane.YES_OPTION)){
                if(opcaoescolhida==JOptionPane.YES_OPTION){
                    obj =  c.buscar(vetc,(String.valueOf(comboNomeComponente.getSelectedItem())));
                    comp.inserirListac(obj);
                    opcaoescolhida = JOptionPane.showConfirmDialog(null, "Deseja inserir mais Componentes?", "",JOptionPane.YES_NO_OPTION);// se coloca yes ele insere o mesmo objeto novamente
            }
                i++;
        }
             comboNomeComponente.setVisible(false);
}

O problema é que fica sempre no mesmo objeto, preciso saber como verificar se o usuario alterou o combo…
Valeu

Cara, tá faltando lógica… Quando ví o título, pensei que o mundo ia explodir… procure títulos mais apropriados para seu tópico, além de criá-lo num fórum mais específico do assunto (Interface Gráfica), mas vamos lá tentar…

Não testei e olhei rápido, mas porque " i<30 " ??? o que essa linha realmente deve fazer… e outra vc está dizendo que ele vai entrar no While se " [i < 30] OU [JOP == YES]" não deveria ser um “E” no lugar do “OU” ??? Não sei porque esse While aí e nem sei porque esse Loop está dentro desse método… seria bom ver o código todo para ter mais clareza, mas o problema está aqui mesmo, quando você responde sim, ele entra no Loop novamente e insere o mesmo objeto…

Posta o código todo…

Abraços :wink: