public class InternationalFormatter extends DefaultFormatter
InternationalFormatter
расширяется DefaultFormatter
, использование экземпляра java.text.Format
обработать преобразование в Строку, и преобразование из Строки. Если getAllowsInvalid()
ложь, это спросит Format
отформатировать текущий текст на каждом редактировании.
Можно определить минимальное и максимальное значение посредством setMinimum
и setMaximum
методы. Для этого, чтобы работать значения, возвращенные из stringToValue
должно быть сопоставимым с минимальными значениями / максимальными значениями посредством Comparable
интерфейс.
Будьте осторожны, как Вы конфигурируете Format
и InternationalFormatter
, поскольку возможно создать ситуацию, где определенные значения не могут быть введены. Полагайте, что дата форматирует 'M/d/yy', InternationalFormatter
это всегда допустимо (setAllowsInvalid(false)
), находится в режиме перезаписи (setOverwriteMode(true)
) и дата 01.07.99. В этом случае пользователь не будет в состоянии ввести два месяца цифры или день месяца. Чтобы избежать этого, формат должен быть 'MM/dd/yy'.
Если InternationalFormatter
конфигурируется, чтобы только позволить допустимые значения (setAllowsInvalid(false)
), каждое допустимое редактирование приведет к тексту JFormattedTextField
быть полностью сброшенным от Format
. Позиция курсора будет также скорректирована, поскольку литеральные символы добавляются/удаляются от получающейся Строки.
InternationalFormatter
's поведение stringToValue
немного отличается чем тот из DefaultTextFormatter
, это делает следующее:
parseObject
вызывается на Format
определенный setFormat
setValueClass
), supers реализация вызывается, чтобы преобразовать значение, возвращенное из parseObject
к соответствующему class. ParseException
не был брошен, и значение вне минуты a / максимальный a ParseException
бросается. InternationalFormatter
реализации stringToValue
этим способом так, чтобы можно было определить альтернативный Класс чем Format
может возвратиться.
Предупреждение: Сериализированные объекты этого class не будут совместимыми с будущими выпусками Swing. Текущая поддержка сериализации является подходящей для краткосрочного хранения или RMI между приложениями, выполняющими ту же самую версию Swing. С 1.4, поддержка длительного хранения всего JavaBeansTM была добавлена к java.beans
пакет. Пожалуйста, см. XMLEncoder
.
Format
, Comparable
Конструктор и Описание |
---|
InternationalFormatter()
Создает
InternationalFormatter без Format указанный. |
InternationalFormatter(Format format)
Создает
InternationalFormatter с указанным Format экземпляр. |
Модификатор и Тип | Метод и Описание |
---|---|
Объект |
clone()
Создает копию DefaultFormatter.
|
protected Action[] |
getActions()
Если
getSupportsIncrement возвращает true, это возвращает два Действия, подходящие для того, чтобы постепенно увеличить/постепенно уменьшить значение. |
Формат. Поле[] |
getFields(int offset)
Возвраты
Format.Field константы, связанные с текстом в offset . |
Формат |
getFormat()
Возвращает формат, который диктует юридические значения, которые могут быть отредактированы и выведены на экран.
|
Сопоставимый |
getMaximum()
Возвращает максимальное допустимое значение.
|
Сопоставимый |
getMinimum()
Возвращает минимальное допустимое значение.
|
void |
install(JFormattedTextField ftf)
Установки
DefaultFormatter на деталь JFormattedTextField . |
void |
setFormat(Format format)
Устанавливает формат, который диктует юридические значения, которые могут быть отредактированы и выведены на экран.
|
void |
setMaximum(Comparable max)
Устанавливает максимальное допустимое значение.
|
void |
setMinimum(Comparable minimum)
Устанавливает минимальное допустимое значение.
|
Объект |
stringToValue(String text)
Возвраты
Object представление String text . |
Строка |
valueToString(Object value)
Возвращает Строковое представление Объекта
value . |
getAllowsInvalid, getCommitsOnValidEdit, getDocumentFilter, getNavigationFilter, getOverwriteMode, getValueClass, setAllowsInvalid, setCommitsOnValidEdit, setOverwriteMode, setValueClass
getFormattedTextField, invalidEdit, setEditValid, uninstall
public InternationalFormatter()
InternationalFormatter
без Format
указанный.public InternationalFormatter(Format format)
InternationalFormatter
с указанным Format
экземпляр.format
- Экземпляр формата используется для того, чтобы преобразовать из Строкpublic void setFormat(Format format)
format
- Format
экземпляр используется для того, чтобы преобразовать из Строкpublic Format getFormat()
public void setMinimum(Comparable minimum)
valueClass
не был определен, и minimum
не нуль, valueClass
будет установлен в тот из class minimum
.minimum
- Минимальное юридическое значение, которое может быть введеноDefaultFormatter.setValueClass(java.lang.Class<?>)
public Comparable getMinimum()
public void setMaximum(Comparable max)
valueClass
не был определен, и max
не нуль, valueClass
будет установлен в тот из class max
.max
- Максимальное юридическое значение, которое может быть введеноDefaultFormatter.setValueClass(java.lang.Class<?>)
public Comparable getMaximum()
public void install(JFormattedTextField ftf)
DefaultFormatter
на деталь JFormattedTextField
. Это вызовет valueToString
преобразовать текущую стоимость из JFormattedTextField
к Строке. Это тогда установит Action
s от getActions
, DocumentFilter
возвращенный из getDocumentFilter
и NavigationFilter
возвращенный из getNavigationFilter
на JFormattedTextField
. Подклассы должны будут обычно только переопределить это, если они хотят установить дополнительных слушателей на JFormattedTextField
.
Если есть a ParseException
в преобразовании текущей стоимости к Строке это установит текст в пустую Строку, и отметит JFormattedTextField
как являющийся в недопустимом состоянии.
В то время как это - открытый метод, это обычно только полезно для подклассификаторов JFormattedTextField
. JFormattedTextField
вызовет этот метод в подходящее время, когда значение изменяется, или его изменения внутреннего состояния.
install
в class DefaultFormatter
ftf
- JFormattedTextField, чтобы отформатировать для, может быть нулевое указание, удаляют от текущего JFormattedTextField.public String valueToString(Object value) throws ParseException
value
. Это вызывает format
на токе Format
.valueToString
в class DefaultFormatter
value
- Значение, чтобы преобразоватьParseException
- если есть ошибка в преобразованииpublic Object stringToValue(String text) throws ParseException
Object
представление String
text
.stringToValue
в class DefaultFormatter
text
- String
преобразоватьObject
представление текстаParseException
- если есть ошибка в преобразованииpublic Format.Field[] getFields(int offset)
Format.Field
константы, связанные с текстом в offset
. Если offset
не допустимое расположение в текущий текст, это возвратит пустой массив.offset
- смещение в текст, который будет исследованpublic Object clone() throws CloneNotSupportedException
clone
в class DefaultFormatter
CloneNotSupportedException
- если class объекта не поддерживает Cloneable
интерфейс. Подклассы, которые переопределяют clone
метод может также выдать это исключение, чтобы указать, что экземпляр не может быть клонирован.Cloneable
protected Action[] getActions()
getSupportsIncrement
возвращает true, это возвращает два Действия, подходящие для того, чтобы постепенно увеличить/постепенно уменьшить значение.getActions
в class JFormattedTextField.AbstractFormatter
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92