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, setValueClassgetFormattedTextField, invalidEdit, setEditValid, uninstallpublic 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 к Строке. Это тогда установит Actions от getActions, DocumentFilter возвращенный из getDocumentFilter и NavigationFilter возвращенный из getNavigationFilter на JFormattedTextField. Подклассы должны будут обычно только переопределить это, если они хотят установить дополнительных слушателей на JFormattedTextField.
Если есть a ParseException в преобразовании текущей стоимости к Строке это установит текст в пустую Строку, и отметит JFormattedTextField как являющийся в недопустимом состоянии.
В то время как это - открытый метод, это обычно только полезно для подклассификаторов JFormattedTextField. JFormattedTextField вызовет этот метод в подходящее время, когда значение изменяется, или его изменения внутреннего состояния.
install в class DefaultFormatterftf - JFormattedTextField, чтобы отформатировать для, может быть нулевое указание, удаляют от текущего JFormattedTextField.public String valueToString(Object value) throws ParseException
value. Это вызывает format на токе Format.valueToString в class DefaultFormattervalue - Значение, чтобы преобразоватьParseException - если есть ошибка в преобразованииpublic Object stringToValue(String text) throws ParseException
Object представление String text.stringToValue в class DefaultFormattertext - String преобразоватьObject представление текстаParseException - если есть ошибка в преобразованииpublic Format.Field[] getFields(int offset)
Format.Field константы, связанные с текстом в offset. Если offset не допустимое расположение в текущий текст, это возвратит пустой массив.offset - смещение в текст, который будет исследованpublic Object clone() throws CloneNotSupportedException
clone в class DefaultFormatterCloneNotSupportedException - если class объекта не поддерживает Cloneable интерфейс. Подклассы, которые переопределяют clone метод может также выдать это исключение, чтобы указать, что экземпляр не может быть клонирован.Cloneableprotected Action[] getActions()
getSupportsIncrement возвращает true, это возвращает два Действия, подходящие для того, чтобы постепенно увеличить/постепенно уменьшить значение.getActions в class JFormattedTextField.AbstractFormatter
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92