Tenho um JFormattedTextField para ser preenchido usado para preencher um valor monetário.
No Post-init-code do campo programei:
meuText.setFormatterFactory(formataTxt.formataMonetario(7,2));
formataTxt é uma instância da classe e o método formataMonetário está abaixo:
public DefaultFormatterFactory formataMonetario(int inteiros, int decimais){
NumberFormat nf = NumberFormat.getCurrencyInstance(Base.currentLocale());
NumberFormat nfEdit = NumberFormat.getNumberInstance(Base.currentLocale());
nf.setMinimumIntegerDigits(1);
nf.setMaximumIntegerDigits(inteiros);
nf.setMinimumFractionDigits(decimais);
nf.setMaximumFractionDigits(decimais);
nfEdit.setMinimumIntegerDigits(0);
nfEdit.setMaximumIntegerDigits(inteiros);
nfEdit.setMinimumFractionDigits(decimais);
nfEdit.setMaximumFractionDigits(decimais);
return new DefaultFormatterFactory(new NumberFormatter(nf), new NumberFormatter(nf), new NumberFormatter(nfEdit));
}
Bem, quando rodo meu programa no windows tudo funciona perfeitamente. Porém, quando rodo meu programa no linux, apenas o “.” e a “,” da parte do teclado onde ficam as letras funciona! O “.” e a “,” do teclado numérico não funcionam!
Quando tento pressionar o “.” do teclado numérico ele não faz nada, e quando tento pressionar a “,” do teclado numérico ele mostra um quadradinho no meu campo na tela.
Eu já testei meu teclado numérico em outros programas no linux e está perfeito! Alguém sabe que loucura pode ser essa agora?!
Grata,
Renata :roll: