Я не могу заставить этот форматер работать. Я хочу установить максимальную длину для целого числа как 6 и десятичных дробей как также 6. Я использую DecimalFormat и применяю шаблон "######. ######".
Я посмотрел на многие другие ресурсы, прежде чем прийти сюда, чтобы спросить ... но все они кажутся разными проблемами ..
Я объявил поле на уровне класса.
private JFormattedTextField currencyConversionRateField;
Вот метод инициализации.
this.currencyConversionRateField = new JFormattedTextField();
DecimalFormat currencyFormat = new DecimalFormat();
currencyFormat.applyPattern("######.######");
currencyConversionRateField.setFormatterFactory(new DefaultFormatterFactory(
new NumberFormatter(currencyFormat)));
currencyConversionRateField.setFocusLostBehavior(JFormattedTextField.PERSIST);
Я попробовал эти методы ниже, но они не работали.
currencyFormat.setMaximumFractionDigits(6);
currencyFormat.setMaximumIntegerDigits(6);
Также я передал строку "######. ######" непосредственно в конструктор DecimalFormat, и это тоже не сработало.
Пожалуйста, сообщите и спасибо!