Trocar o tab pelo enter

13 respostas
V

eai pessoal;
como eu faço para trocar o tab pelo enter no netbens,pois sou iniciante.
valeu

13 Respostas

R

Trocar o tab pelo Enter não tem jeito!

O que você pode fazer é programar a rotininha do ENTER

if (e.getKeyCode() == KeyEvent.VK_ENTER)

Então cada vez que o usuário apertar o ENTER, você verificar se o botão pressionado no evento é o ENTER (conforme o código acima) e dá um focus no próximo campo.
Seu código vai ficar cheio de if e ActionListeners, quando tenho esse tipo de problema, eu converso com o cliente e digo que esse negócio de apertar ENTER é do século passado e que a convenção está adotando o TAB…joga um chaveco…mas se o cliente insistir, não tem jeito, é só com o procedimento acima. Verificando a cada evento se o botão pressionado foi o ENTER.

Abraços
Rodrigo

S

Coloca esse código ai no teu construtor

HashSet conj = new HashSet(frm.getFocusTraversalKeys(KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS));   
conj.add(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0));     
frm.setFocusTraversalKeys(KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, conj);
F

Interessante esse código…

Quer dizer que o JFrame tem um HashSet das teclas que ele são “passadoras de foco”.

Bem legal mesmo…

E

SamuelFFerreira:
Coloca esse código ai no teu construtor

HashSet conj = new HashSet(frm.getFocusTraversalKeys(KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS)); conj.add(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0)); frm.setFocusTraversalKeys(KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, conj);

aonde deve ser colocado, por favor numa linguagem que eu entendo, sou leigo ainda!

E

http://www.guj.com.br/posts/list/92862.java#497162

E

Ou seja, http://www.guj.com.br/posts/list/92862.java#497384

E

Você ta é brincadeira, esse exemplo não disse aonde deve colocar no meu projeto, quer que eu crie um projeto, não o mesmo ja esta pronto, só perguntei aonde coloco, copiar e colar link eu tbm sei.

:shock:

E

Ou seja, não basta apontar para uma colher e para o vidro de geléia.
Eu preciso segurar a colher, e… .
Tá bom.

Foi por isso que ontem eu estava na fila de um fastfood e larguei a atendente anotando o pedido. Ela simplesmente não conseguia olhar para o cartaz com a oferta e copiar os acompanhamentos para a comanda, para poder passar para o caixa.

E

wellington.nogueira:
evertonmagnus:
Você ta é brincadeira, esse exemplo não disse aonde deve colocar no meu projeto, quer que eu crie um projeto, não o mesmo ja esta pronto, só perguntei aonde coloco, copiar e colar link eu tbm sei.
:shock:

Que tal ser um pouquinho mais “pró-ativo” e ler um pouquinho de código, é bom para aprendizado?

Se procurar. verá que o tal FORWARD_TRAVERSAL_KEYS tá lá e mais claramente você verá onde é utilizado e poderá adaptar ao seu projeto…

Só como dica, busque por considerarEnterComoTab (aliás, é um método com comentário bem interessante)…

Só para finalizar, ta funcionando, mas quando o foco ta no botão, ele passar o foco inves de calcular por exemplo. coloquei no jTextField1KeyPressed de cada componente. vc não foi bem claro. hehehehehe

E

Bom, no exemplo que o Thingol deu não foi usado o tal evento de keypressed (que por acaso, no caso de ENTER e TAB, simplesmente não funciona. Não lhe ensinaram esse segredinho?)

De qualquer maneira, para fazer validação quando um textfield perde o foco (por exemplo, devido a um tab ou enter), então você pode olhar isto aqui:

http://download.oracle.com/javase/6/docs/api/javax/swing/InputVerifier.html

V

Ou ainda melhor: http://www.guj.com.br/posts/list/92862.java#497384

(Sim, eu vi os links do entanglement)

W

Apenas uma observação, o exemplo que o SamuelFFerreira só serve para a mudança de foco “estilo TAB”, ou seja, para frente. Se for para alterar o comportamento como o SHIFT+TAB (foco para trás), precisa adicionar TAMBÉM para o KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS com outra chave ou a mesma máscara de modificação (SHIFT, CTRL, ALT).

W

evertonmagnus:
Você ta é brincadeira, esse exemplo não disse aonde deve colocar no meu projeto, quer que eu crie um projeto, não o mesmo ja esta pronto, só perguntei aonde coloco, copiar e colar link eu tbm sei.
:shock:

Que tal ser um pouquinho mais “pró-ativo” e ler um pouquinho de código, é bom para aprendizado?

Se procurar. verá que o tal FORWARD_TRAVERSAL_KEYS tá lá e mais claramente você verá onde é utilizado e poderá adaptar ao seu projeto…

Só como dica, busque por considerarEnterComoTab (aliás, é um método com comentário bem interessante)…

Criado 2 de abril de 2010
Ultima resposta 12 de nov. de 2010
Respostas 13
Participantes 8