Mascara para jTextField

Galera,

Gostaria de saber se tem jeito de mascarar um campo que será inserido um valor(moeda) , tipo 1025,90 ou 122,22 ou 10,50 por exemplo.

Desde já agradeço

Você poderia ter pesquisado. Esse tipo de pergunta é bastante comum. Veja:

lucasamarante19 olha esse código vê se te ajuda. Abraços

[code] JFormattedTextField ftfplaca;
MaskFormatter mascaraplaca;

try{
mascaraplaca = new MaskFormatter("???-####");//Dentro do parentese você altera o formato da mascara
mascaraplaca.setPlaceholderCharacter(’_’);

    }catch(ParseException ecxp){}
    
    ftfplaca = new JFormattedTextField(mascaraplaca);

[/code]

try {
jFormattedTextField1.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.MaskFormatter("#.###,##")));
} catch (java.text.ParseException ex) {
ex.printStackTrace();
}

Basta você criar uma variável do tipo jFormattedTextField, e colocar o modelo da máscara que vc quer, nesse caso ficou 1.000,00.

eu to fazendo o meu projeto no netbeans e eu coloquei essa mascara (#.###,## ) no formatterFactory e ele só está aceitando valor acima de mil. No caso , tem como fazer uma mascara onde o usuario possa colocar vários tipos de valores (moeda)

exemplo R$ 5.65 | R$ 10.28 | R$ 123.90 | R$1092.87 | R$10234.93 …

desde já agradeço

abraços

Cara a tabela que tem explicando sobre “javax.swing.text.MaskFormatter”.

Caracteres Descrição

Qualquer número válido, usa Character.isDigit .

» Caractere de escape, usado para escapar nenhum dos caracteres de formatação especial.
U Qualquer personagem ( Character.isLetter ). Todas as letras minúsculas são mapeados para letras maiúsculas.
L Qualquer personagem ( Character.isLetter ). Todas as letras maiúsculas são mapeados para letras minúsculas.
A Qualquer caractere ou número ( Character.isLetter ou Character.isDigit )
? Qualquer personagem ( Character.isLetter ).

  • Qualquer coisa.
    H Qualquer caractere hexadecimal (0-9, af ou AF).

Você para fazer isso, tem que fazer alguma lógica de programação, pois eu acho que sem a logica não tem como, algo do tipo pegar o que foi digitado e colocar no formato, mas se foi digitado tantos números fica neste formato, outros tantos números outro formato.

Espero ter ajudado.