[Resolvido]Como saber se algo foi selecionado no jcombobox?

7 respostas
Lana_Csil

Duvida básica :oops:
Encontrei uma sugestão aqui no fórum para inserir uma string vazia no combo, e depois verificar se o selecionado for vazio, enviar mensagem de erro.
Mas isso é meio gambi ne, e se o usuario nem clicar no combo, essa sugestão já não funciona, pois a string vazia não é a primeira da lista!

7 Respostas

douglaskd

JComboBox teste = new JComboBox(); teste.setMaximumRowCount(3); teste.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent e) { if( (String)teste.getSelectedItem() == ""){ \mostra o erro setSelectedItem(coloca aqui o item que quer selecionar se estiver vazio); } } } } );
como sempre não testado hehe…só uma dica

MarcioCasteloBranco
Boa tarde segue um exemplo:
uf.addItemListener(new ItemListener() {

            public void itemStateChanged(ItemEvent e) {
                //TODO rever
                if (e.getStateChange() == ItemEvent.SELECTED) {//verifica se o item selecionado e um item do seu Jcombo
                    System.out.println("Uf: " + e.getItem().toString());
                    if (e.getItem().toString().equals("Espírito Santo (ES) ")) {
                        System.out.println("Ok");
                        cidade.setModel(new javax.swing.DefaultComboBoxModel(aplicacao.getCidades()));

                    } else {
                        cidade.setModel(new javax.swing.DefaultComboBoxModel(new String[]{"Selecione"}));
                    }

                }
            }
        });
MarcioCasteloBranco
Post 20/10/2010 14:37:34     Assunto: Re:Como saber se algo foi selecionado no jcombobox?
view plaincopy to clipboardprint?

   1. JComboBox teste = new JComboBox();  
   2.   teste.setMaximumRowCount(3);  
   3.   teste.addActionListener(  
   4.        new ActionListener(){  
   5.             public void actionPerformed(ActionEvent e)  
   6.             {  
   7.                 if( (String)teste.getSelectedItem() == ""){  
   8.                 \mostra o erro  
   9.                 setSelectedItem(coloca aqui o item que quer selecionar se estiver vazio);  
  10.                 }  
  11.                 }  
  12.             }  
  13.        }  
  14.   );
como sempre não testado hehe...só uma dica
O actionListener não seria um bom ouvinte para o JComboBox.
douglaskd

humm , é que eu ia fazer o teste em um botão, depois revolvi mudar pro JComboBox.
mais não cheguei a testar.

valeu pela dica. :smiley:

AndreSorge

Boa Noite Lana,

Você pode pegar o Index da lista do combo também…e comprar se o index selecionado é o que você quer.

espero ter ajudado…

Lana_Csil

AndreSorge:
Boa Noite Lana,

Você pode pegar o Index da lista do combo também…e comprar se o index selecionado é o que você quer.

espero ter ajudado…


Obrigada Andre, resolveu direitinho! Comparei se o index é diferente de -1, caso não fosse dispara um erro, para forçar o usuario a selecionar um item.

AndreSorge

Di nada, qualquer dúvida posta ai que agente tenta ajudar!

Até mais!

Criado 20 de outubro de 2010
Ultima resposta 21 de out. de 2010
Respostas 7
Participantes 4