Galera estou validando aqui no sistema para que o campo só aceite número, então criei o sequinte método:
private void SomenteNumeros(java.awt.event.FocusEvent evt) {
long valor;
if (idPessoa.getText().length() != 0){
try {
valor = Long.parseLong(idPessoa.getText());
}catch(NumberFormatException ex){
JOptionPane.showMessageDialog(null, "Esse Campo só aceita números" ,"Informação",JOptionPane.INFORMATION_MESSAGE);
idPessoa.grabFocus();
}
}
}
Mais quando mostra a mensagem ele entre em loop 4 vezes!!! Tenho clicar 4vezes na mensagem para poder voltar para o campo e alterar a letra para número. O que estou fazendo de errado?