olá pessoal, estou fazendo o meu projeto final e gostaria de saber como alterar a cor de uma JTextField quando o cursor sair dela. Se alguém souber a solução, me ajudem. Obrigado!
Para eventos do mouse você terá que olhar a interface MouseListener, e usar o método addMouseListener do JTextField.
Para mudar a cor você pode usar o método setBackground.
meuTextField.addFocusListener(new FocusListener() {
@Override
public void focusLost(FocusEvent e) {
meuTextField.setBackground( Color.RED );// escolha a cor que quiser
}
@Override
public void focusGained(FocusEvent e) {
}
});
t+
mas vamos supor, eu tenho 5 JTextField, não tem como eu criar um evento Focus para todas? tem que fazer de uma em uma?
Não, vc cria um listener e registra ele como ouvinte de todas elas…
class MeuOuvinte implements FocusListener {
@Override
public void focusLost(FocusEvent e) {
JTextField meuTextField = (JTextField) e.getSource();
meuTextField.setBackground( Color.RED );// escolha a cor que quiser
}
@Override
public void focusGained(FocusEvent e) {
}
}
MeuOuvinte ouvinte = new MeuOuvinte();
qualquerTextField.addFocusListener(ouvinte);
t+