Ai galera… Como podem ver sou iniciante e essa minha dúvida é bem simples.
Quero que ao executar a minha aplicação o usuário possa alternar entre campos JTextField utilizando a tecla TAB.
Alguém pode ajudar?
Ai galera… Como podem ver sou iniciante e essa minha dúvida é bem simples.
Quero que ao executar a minha aplicação o usuário possa alternar entre campos JTextField utilizando a tecla TAB.
Alguém pode ajudar?
Mais esse não é o comportamento default???
T+
Então, também achei que fosse, mas tenho uma aplicação e o TAB não faz nada quando pressionado.
Será que tem algo a ver com o layout?
Oi,
Mudar o focu utilizando a tecla TAB é um “padrão” default do java.
Porem a ordem que se comporta o focu ao clicar no TAB não é.
A principio por default a ordem seria a sequencial adicionada ao seu painel ou ao seu container.
Caso você queira mudar esta sequencia, você pode criar um evento de teclado utilizando o TAB e dando requestFocus() no campo desejado.
Não sei se ficou complicado…
Tchauzin!
as vezes, quando você clicou no TAB o focu foi parar em um botão, e você não conseguiu identifica-lo…
Oi,
qual o layout utilizado?
Tchauzin!
Ola,
Tentei usar o GridBagLayout e alguns outros, mas não me dei muito bem, então deixei no “Desenho Livre”.
De qualquer forma, tentei adicionar o seguinte evento ao 1º campo:
private void Field1KeyPressed(java.awt.event.KeyEvent evt) {
if (evt.getKeyCode()==evt.VK_TAB)
Field2.requestFocus();
}
Mesmo assim, não deu certo. Aonde estou errando?
Cara pelo oque eu sei era Default
Abraços
Oi,
Existem duas maneiras de implementar isso..
uma é adicionando um KeyListener ao seu componente:
textfield.addKeyListener(io_kl_rede_selecionar);
//
// Implementa um KeyListener para o textfield.
//
KeyListener io_kl_rede_selecionar = new KeyListener()
{
//
// Metodo de Botao Pressionado
//
public
void keyPressed(KeyEvent evt)
{
//
// Se for apertado o botao TAB
//
if (
evt.getKeyCode() == KeyEvent.VK_TAB
)
{
//
// Componente que recebe o Focu
//
}
}
//
//Interface obrigatoria
//
public
void keyReleased(KeyEvent evt)
{
}
//
//Interface obrigatoria
//
public
void keyTyped(KeyEvent evt)
{
}
};
e a outra já é direta no componente...
textfield = new JTextField();
textfield.setBounds(65,17,170,25);
textfield.requestFocus();
io_ct.add(textfield);
textfield.addKeyListener
(
new KeyAdapter()
{
public
void keyPressed(KeyEvent evt)
{
//
// Cria um int com o codigo do botao
//
int ln_ke_pressionado = evt.getKeyCode();
//
// Se for apertado o botao control
//
if (
ln_ke_pressionado == KeyEvent.VK_TAB
)
{
// Focu.
}
}
}
);
De uma olhada.. e veja se isso ajuda na implementação do seu..
Tchauzin!