JFormattedTextField e MaskFormatter

2 respostas
Flavio_Luiz

E ai pessoal tudo bem?
será q alguém pode me ajudar…
tenho o seguinte caso de uso…
O usuario digita (“[telefone removido]”) seu numero de CPF
preciso colocar uma mascará no numeros do cpf para ficare assim (“[CPF removido]”)
gostaria de usar o JFormattedTextField e MaskFormatter
porem eu não sei usar ele…

2 Respostas

Leandro_Vecchi
Bom dia, você cria um método para formata seu field e altera seu field para JFormatedTextField. O código do formatador é o seguinte:
@SuppressWarnings("serial")

	public MaskFormatter getFormatadorCpf() {
    	MaskFormatter formatter = null;
		try {
			formatter = new MaskFormatter("###.###.###-##") {
				@Override
				public Object stringToValue(String value) throws ParseException {
					if (value.equals("___.___.___-__") || value.equals("")) {
						return null;						
					} else {
						return super.stringToValue(value);
					}					
				}
			};		
			formatter.setPlaceholderCharacter('_');
		} catch (ParseException e) {
			e.printStackTrace();
		}
        return formatter;
    }

depois você chama ele no construtor do seu Field assim:

nomeAlunoField_4 = new JFormattedTextField(getFormatadorCpf());
		nomeAlunoField_4.setBorder(new LineBorder(new Color(30, 144, 255), 1, false));
		nomeAlunoField_4.setBounds(10, 139, 106, 20);
		panel.add(nomeAlunoField_4);

Deu pra entender? Espero ter ajudado!
qualquer coisa posta ae!
Vlw!

Flavio_Luiz

Desculpa mas não entedi, ah algum exemplo mais simples. Tipo eu preciso pegar uma string e colocar a mascará nela…
como eu faço isso ???

Criado 18 de dezembro de 2008
Ultima resposta 22 de dez. de 2008
Respostas 2
Participantes 2