Установка текста в JFormattedTextField - PullRequest
4 голосов
/ 02 декабря 2009

Я использую фрагмент кода ниже для создания JFormattedTextField. При вводе значений через текстовое поле GUI форматирование работает как положено. Однако, когда я программно устанавливаю значение, форматирование не происходит. Как я могу заставить это произойти?

JFormattedTextField myTextField = new JFormattedTextField(new DecimalFormat("#0.###"));
// Formatting Does Not Occur
myTextField.setText("555.55555");

Ответы [ 2 ]

5 голосов
/ 02 декабря 2009

Взгляните на метод setValue ()

Попробуйте это

myTextField.setValue(new Float("555.55555"));
4 голосов
/ 02 декабря 2009

Добавить к Ответ OTisler :

Из Javadoc для JFormattedTextField.setText ()

Обратите внимание, что текст не ограничен свойство, поэтому PropertyChangeEvent отсутствует уволен, когда он меняется. Слушать изменения в тексте, используйте DocumentListener.

Из Javadoc для JFormattedTextField.setValue ()

Устанавливает значение, которое будет отформатировано с помощью AbstractFormatter, полученного из текущий AbstractFormatterFactory.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...