Возможно ли установить MaskFormatter из JFormatterTextField в ##, ## и тип значения JFormatterTextField для Float? Я попробовал это, используя следующую маску для фабрики форматирования по умолчанию, но она не работает, и getValue().getClass()
дает мне java.lang.String
.Значение JFormattedTextField для Float и маска для ##, ##
DefaultFormatterFactory dff = new DefaultFormatterFactory();
mf = new MaskFormatter("##,##);
mf.setValueClass(Float.TYPE);
dff.setDefaultFormatter(mf);
field.setFormatterFactory(dff);
И проблема с форматированием чисел заключается в том, что он не маскирует поле для меня.
PS. Моя конфигурация системы по умолчанию использует «,» как «.». на английском языке. Так что это не проблема, и я привел ее только для точности.
Если вы запрашиваете дополнительную информацию, скорее всего, вы должны опубликовать ее как комментарий, а не как ответ. – Keppil
Правда. Но это тоже ответ - за исключением того, что он комментирует попытку форматирования чисел, что вызвало у меня некоторые сомнения. –
Маскировка! Использование DecimalFormat не маскирует его для меня – Johnny