JTextField

10 respostas
igor_jua

Galera, tenho um conjunto de JTextFields e gostaria de que quando o usuario pressionasse a tecla TAB do teclado o cursor fosse para o JTextField de baixo.

Como faço isso?

10 Respostas

Marlon_Meneses

ueh!!!
JTextField jah faz isso por padrao!!!
oq vc esta usando nao eh JTextArea?!

igor_jua

Não! São JTextFilds mesmo.
Eles estão dentro de um JPanel, que por sua vez está dentro de um JInternalFrame, que por sua Vez esta dentro de um JDesktopPane, que por sua vez esta dentro de um JPanel que ta dentro do JFrame!
Também pensei que ele fizesse isso sozinho!
Mas…
=
iai, alguma ideia do que esteja acontecendo?

Marlon_Meneses

jah q isso nao esta acontecendo…
faz um evedo keypressed e coloca um if pra verificar se a tecla pressionada from tab, se for setar o foco no proximo campo

lina

Oi,

O que acontece quando você aperta a tecla TAB?

Tchauzin!

igor_jua

Lina, o cursor deverar ir para o JTextField de baixo

lina

Oi,

isso eu sei! + o que está acontecendo quando quando você aperta TAB ? ele vai para o campo do lado ?

Tchauzin!

igor_jua

Marlon, tem algum modo de’u saber qual elemento esta abaixo?
tipo um botão, ou label, etc?

Vinny

Quando o seu JTextField perde o foco
faça um grabFocus para o campo que vc deseje que
receba o cursor

JTextField1.grabFocus();

Normalmente qdo vc preciona TAB o cursor vai para o campo do lado ou o mais proximo
dele!

Caso tenha um outro JTextField ao lado tente muda-lo de lugar coloque do lado do que vc deseja
que receba o focu, assim vc não ira precisar usar o grabFocus()

igor_jua

Valeu Vinny!!!
Resoolvido meu prob!!!
Agradeço a Todos Pela Atenção!!!
Forte Abraço!

lina

Oi,

Já que não fui respondia, você pode fazer o seguinte.:

text.addFocusListener(new FocusAdapter() {
			@Override
			public void	focusLost(FocusEvent evt) { 
				
				// Manda o foco para outro textfiald.
				<outrotextfield>.requestFocus();
			}
		});

Tchauzin!

Criado 12 de agosto de 2009
Ultima resposta 12 de ago. de 2009
Respostas 10
Participantes 4