JFormattedTextField colocando Pontos no campo

7 respostas
J

Olá pessoal boa tarde!
Estou com pequeno probleminha referente ao JFormattedTextField!
Meu JFormattedTextField é referente à uma variável tipo LONG, então toda vez que digito “1234” ele formata para “1.234”.
Preciso que esse ponto não apareça… que fique apenas “1234” mesmo, ou seja, não haja separação de milhar!

Alguma idéia para me ajudar?
Obs.: Procurei pelo forum, achei textos parecidos mas nenhum se adequava ao que preciso!

Obrigado!

João.

7 Respostas

J

Alguém? :smiley:

ajfilho

Se você estiver usando formatterFactory, você pode clicar em cima do JFormattedTextField e vai em Customize Code (Personalizar Código).

Em seguida vai aparecer o componente instanciada e a formatterFactory em baixo, então você clica no combo da factory e vai em custom property. Lá você coloca o formato da máscara como deseja

Se quizer, pode colocar assim:

new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#0")))

Abraços!

J

Po cara, excelente ajuda.
Coloquei no construtor no JFormattedTextFields

new JFormattedTextField(new DecimalFormat("#0"));

E funcionou!

Agora, aproveitando, sabe como setar apenas 3 casas decimais após a vírgula?

Obrigado!

ajfilho
new java.text.DecimalFormat("#0.###");
J

Tem para String?
Por exemplo “123.2321” para “123…232”?

ajfilho

Não entendi…

Poderia explicar melhor o que estás pretendendo com esse último comentário??

Abraços!

J

Queria que tendo uma String, eu formate ela para ter apenas 3 caracteres depois do ponto. Meu objeto é do tipo String e tem que ficar assim. Também não queria fazer o parse. Será que tem como?

Criado 5 de dezembro de 2008
Ultima resposta 9 de dez. de 2008
Respostas 7
Participantes 2