jComboBox com enter

8 respostas
DAREK6920

Bom dia a todos.
Este problema deve ter uma solução simples, mas como não sou um expert, vou ter de recorrer a ajuda (pelo amor de Deus! rsrsrsrs)

Sendo vendedor um jComboBox, porque isto não funciona:

private void vendedorKeyReleased(java.awt.event.KeyEvent evt) { if (evt.getKeyCode() == 10){ total.requestFocusInWindow(); }

Estou usando o netbeans 7.

Grato pela ajuda.

8 Respostas

SandroSoftwares

Tenta isso:

private void vendedorkeyPressed(java.awt.event.KeyEvent evt) if (evt.getKeyCode() == evt.VK_ENTER) { total.requestFocusInWindow(); }

DAREK6920

Não funcionou de jeito nenhum. É como se um combo não recebesse nenhuma tecla

SandroSoftwares

aqui funciona perfeito:

private void jComboBoxAnoKeyPressed(java.awt.event.KeyEvent evt) {

if (evt.getKeyCode() == evt.VK_ENTER) {

jTextFieldValor.requestFocusInWindow();

}

}

usei o método keyPressed

SandroSoftwares

testei om o KeyReleased e funcionou tbm!

DAREK6920

Algo esta errado, pois comigo nenhum destes dois funciona. Alguem saberia dizer o que pode ser ?

SandroSoftwares

total é o que? jtextfield?

aqui rodou legal até com seu código… (sendo total um jtextfield contido dentro do jframe)

if (evt.getKeyCode() == 10){ total.requestFocusInWindow(); }

DAREK6920

Sim, é isto mesmo. “total” eh um jtextfield. O problema é que o combo sequer esta identificando a entrada de qualquer tecla, muito menos do enter. Ele age como se a coisa toda não tivesse nada a ver com ele. Se utilizar o actionperform ele funciona direitinho, fora disto, nadas.
Acredito que tenha alguma coisa a ver com o fato de ser um combo editavel. Mas não consigo atinar com o que seja.
Voce me deu uma ideia e fui testar neste instante. Se eu faço o bichinho como não editavel, ele aceita o enter numa boa. Mas se eu libero para edição nada feito.
Alguem pode explicar porque ?

SandroSoftwares

após pesquisar um pouquinho "consegui" resolver seu problema assim:

1 - Deixei o jcombobox desmarcado na opção editable (ou seja não editável)

2 - Adicionei um evento keyPressed contendo esse código:

private void jComboBox1KeyPressed(java.awt.event.KeyEvent evt) {
    
        jComboBox1.getEditor().getEditorComponent(); // esse aqui vai te permitir selecionar digitando sem estar editável! porém pelos testes que fiz vc não visualiza isso.. vc vai digitando e ele vai selecionado... apenas digita e dá enter e ele aceita! 
      
        if (evt.getKeyCode() == 10){    
           jTextField1.requestFocusInWindow();    
       }
}

:shock:

Criado 17 de março de 2012
Ultima resposta 18 de mar. de 2012
Respostas 8
Participantes 2