e ai galera…
Seguinte:
Estou com um problema e não to conseguindo resolve;
tenho 2 JTextFields, um pode digitar 4 numeros e o outro 2 numeros.
Fiz um metodo pra tratar esses detalhes:
public void formataTextField(KeyEvent e,String chave, JTextField textField){
char key = e.getKeyChar();
String text = "";
int tamanho = 0;
if (key == '0' || key == '1' || key == '2' || key == '3' || key == '4' || key == '5' || key == '6' || key == '7' || key == '8' || key == '9'){
text = textField.getText();
if (chave.equals("codigo")){
tamanho = 3;
}else {
tamanho = 1;
}
if (text.length() < tamanho){
textField.setText("");
textField.setText(text);
}else{
textField.setText(text.substring(0,tamanho));
}
} else {
textField.setText(text.substring(0,text.length()));
}
}
esse metodo e chamado no evento keyListener do JTextfield, ele recebe o KeyEvent, o JTextfield que disparou o evento e uma chave pra identificar o JTextField.
Tem 2 probleminhas nele.
1 - ele aceita digitar uma letra(somente uma);
2 - quando digito o ultimo numero, por exemplo, no JTextfield de 4 numeros, digito 1234 e continuar digitando ele vai fazer a troca do ultimo caracter.
Alguem pode me dar uma mãozinha ai pra resolver esse problema?
Valeu…