Formatar entrada de valores

3 respostas
loganwlogan

Boa tarde Amigos,

Eu tenho um TextField que recebe o valor do salário e armazena em uma variável double, por esse motivo ele tem que ser do formatoa “36.58” e não “36,58”. Para eivitar problemas na conversão criei um método que troca a vírgula pelo ponto. O prolbema é que se o usuário digitar “1.658,36” vai dar erro, posso melhorar meu método para evitar esse problema, mas acredito que já deva ter algo mais evoluído para tratar isso, pensei em usar o JformattedTextField, mas ele serve para um número determinado de caracteres e como os valores digitados variam muito não sei se seria o mais indicado. Alguém tem alguma sugestão para me ajudar nisso?

Grato

Logan

3 Respostas

loganwlogan

Na verdade comecei a utilizar o JFormattedTextField e tive alguns problemas do tipo:
se coloco na máscara o formato “######.##”, tenho que digitar 000036.56, isso eu consegui fazer fora do NetBeans dentro do netBeans nem isso eu consigo. Na aba de propriedades do NetBeans tem algumas mascaras prontas, mas nenhuma no formato com ponto no lugar da vírgula. Será que da pra formatar para o formato que eu preciso? Ou outra maneira de fazer isso.

Abçs

Logan

spadinha

cara eu resolvi um problema mais ow menos parecido com o seu …

Na mascara de formataçao eu inclui a condicao
NumberFormat.setParsetoBigDecimal(true);

e na hora de pegar o retorno eu pego assim

((Number) field.getValue()).doubleValue();

mais nao sei se no seu caso pode resolver

E

O JformatterTextField é o que voce precisa, da uma olhada nas possiveis configurações dele. Ele vai se adaptar ao que voce precisa, mas caso ainda tenha problemas, formate o seu campo com expressões regulares.

Criado 23 de maio de 2008
Ultima resposta 23 de mai. de 2008
Respostas 3
Participantes 3