Вопрос

Как вы добавляете нулевое заполнение к JSpinner?
Поскольку счетчик создает JFormattedTextField сам по себе, я не могу просто передать формат в конструктор JFormattedTextField.
Разве нет способа установить форматирование на существующем JFormattedTextField?

Чего я хочу:значение = 37, редактор = "0037"

Обновить:
Я попробовал это, как было предложено:

JSpinner mySpinner = new JSpinner();  
mySpinner.setEditor(  
    new JSpinner.NumberEditor(mySpinner, "####"));  

и результатом является отсутствие каких-либо изменений в представлении данных счетчика.Это кажется разумным решением;кто-нибудь успешно пробовал это, чтобы я мог быть уверен, что это просто что-то неровное в моем собственном приложении?

Это было полезно?

Решение

Ты можешь установите редактор себя, вот так:

// minimum of four digits
mySpinner.setEditor(new JSpinner.NumberEditor(mySpinner, "0000"));

"0000" является DecimalFormat строка, указывающая четыре цифры, при необходимости дополняемые нулем; "####" указывает четыре цифры, но не вводит нуль.

В DecimalFormat Документация API более подробно описывает строки форматирования.

Другие советы

Ссылаясь на javadocs, JSpinner имеет setEditor(JComponent) - редактор настроек (JComponent) способ.Используйте это, чтобы установить свое пользовательское JFormattedTextField с его пользовательским форматом.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top