JComboBox

3 respostas
M

Nossa…to me ambananado todo pra consegui pegar o que está escrito no JComboBox

combonome = new JComboBox(); 
combonome.setMaximumRowCount(7);
combonome.setEditable(true);
combonome.getEditor().getEditorComponent().addKeyListener(new KeyAdapter()
{
   public void keyPressed(KeyEvent ke)
   {
   if ( ke.getKeyCode() == KeyEvent.VK_ENTER)
   {
   try
   {
    ArrayList array = metodos.mostraAlunos("SELECT nome FROM aluno WHERE nome like '"+combonome.getSelectedItem().toString()+"%' ORDER BY nome");
 .
 .
 .

Na 1ª vez que aperto enter, combonome.getSelectedItem().toString() fica null e na segunda vez aparece um nome do banco, porém depois disso, sempre a busca fica pelo 1º nome que voltou do banco!

Como resolvo isso?

3 Respostas

M

“mdtorbis”:
Nossa…to me embananando todo pra consegui pegar o que está escrito no JComboBox

combonome = new JComboBox(); 
combonome.setMaximumRowCount(7);
combonome.setEditable(true);
combonome.getEditor().getEditorComponent().addKeyListener(new KeyAdapter()
{
   public void keyPressed(KeyEvent ke)
   {
   if ( ke.getKeyCode() == KeyEvent.VK_ENTER)
   {
   try
   {
    ArrayList array = metodos.mostraAlunos("SELECT nome FROM aluno WHERE nome like '"+combonome.getSelectedItem().toString()+"%' ORDER BY nome");
 .
 .
 .

Na 1ª vez que aperto enter, combonome.getSelectedItem().toString() fica null e na segunda vez que aperto enter aparecem os nomes do banco, porém depois disso, quando aperto enter denovo, sempre a busca fica pelo 1º nome que voltou do banco (combonome.getSelectedItem().toString() == ao 1º nome da lista que veio do banco)!

Como resolvo isso?

H

Usa:

combonome.getEditor().getItem()

pois o

combonome.getSelectedItem()

traz o item que está selecionado na lista.

M

Muito Obrigado cara!
Vo testa e ver se funciona! Não sei o que seria de mim se não fosse as pessoas do portal, assim como você!

Obrigado…

Criado 3 de janeiro de 2005
Ultima resposta 4 de jan. de 2005
Respostas 3
Participantes 2