Класс DefaultFormatter

Все реализованные интерфейсы:
Serializable, Cloneable
Прямые известные подклассы:
InternationalFormatter, MaskFormatter
public class DefaultFormatter
extends JFormattedTextField.AbstractFormatter
implements Cloneable, Serializable

DefaultFormatter форматирует произвольные объекты. Форматирование выполняется путём вызова метода toString. Для преобразования значения обратно в строку, ваш класс должен иметь конструктор, принимающий строковый аргумент. Если такой конструктор не найден, возвращаемое значение будет строкой, переданной в stringToValue.

Экземпляры DefaultFormatter не могут быть использованы в нескольких экземплярах JFormattedTextField. Чтобы получить копию уже настроенного DefaultFormatter, используйте метод clone.

Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими релизами Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, поддержка долгосрочного хранения всех JavaBeans™ была добавлена в пакет java.beans. Пожалуйста, обратитесь к XMLEncoder.

С:
1.4
См. также:
JFormattedTextField.AbstractFormatter, Сериализованная форма

Краткое описание конструкторов

Конструктор Описание
DefaultFormatter()

Создаёт DefaultFormatter.

Краткое описание методов

Модификатор и тип Метод Описание
Object clone()

Создаёт копию DefaultFormatter.

boolean getAllowsInvalid()

Возвращает, разрешено ли значение, редактируемое в данный момент, быть невалидным в течение определённого времени.

boolean getCommitsOnValidEdit()

Возвращает время публикации изменений обратно в JFormattedTextField.

protected DocumentFilter getDocumentFilter()

Возвращает DocumentFilter для ограничения символов, которые можно вводить в JFormattedTextField.

protected NavigationFilter getNavigationFilter()

Возвращает NavigationFilter для ограничения размещения курсора.

boolean getOverwriteMode()

Возвращает поведение при вставке символов.

Class<?> getValueClass()

Возвращает класс, используемый для создания новых объектов.

void install​(JFormattedTextField ftf)

Устанавливает DefaultFormatter на определённый JFormattedTextField.

void setAllowsInvalid​(boolean allowsInvalid)

Устанавливает, разрешено ли значение, редактируемое в данный момент, быть невалидным в течение определённого времени (то есть, stringToValue выбрасывает ParseException).

void setCommitsOnValidEdit​(boolean commit)

Устанавливает время публикации изменений обратно в JFormattedTextField.

void setOverwriteMode​(boolean overwriteMode)

Настраивает поведение при вставке символов.

void setValueClass​(Class<?> valueClass)

Устанавливает класс, используемый для создания новых объектов.

Object stringToValue​(String string)

Преобразует переданную строку в экземпляр getValueClass с помощью конструктора, принимающего строковый аргумент.

String valueToString​(Object value)

Преобразует переданный объект в строку с помощью метода toString.

Методы, унаследованные от класса javax.swing.JFormattedTextField.AbstractFormatter

getActions, getFormattedTextField, invalidEdit, setEditValid, uninstall

Методы, унаследованные от класса java.lang.Object

equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Конструкторы

DefaultFormatter

public DefaultFormatter()

Создаёт DefaultFormatter.

Методы

install

public void install(JFormattedTextField ftf)

Устанавливает DefaultFormatter на определённый JFormattedTextField. Это вызовет valueToString для преобразования текущего значения из JFormattedTextField в строку. Затем будут установлены Action из getActions, DocumentFilter возвращённое из getDocumentFilter и NavigationFilter возвращённое из getNavigationFilter на JFormattedTextField.

Подклассы обычно будут переопределять этот метод только в том случае, если они хотят установить дополнительные слушатели на JFormattedTextField.

Если при преобразовании текущего значения в строку возникнет ошибка, текст будет установлен в пустую строку, а JFormattedTextField будет помечен как находящийся в недопустимом состоянии.

Хотя это публичный метод, он обычно полезен только для подклассов JFormattedTextField. JFormattedTextField будет вызывать этот метод в соответствующие моменты при изменении значения или внутренних состояний.

Overrides:
install в классе JFormattedTextField.AbstractFormatter
Параметры:
ftf - JFormattedTextField для форматирования, может быть null, что указывает на удаление из текущего JFormattedTextField.

setCommitsOnValidEdit

public void setCommitsOnValidEdit(boolean commit)

Устанавливает, когда правки публикуются обратно в JFormattedTextField. Если true, commitEdit вызывается после каждой корректной правки (всякий раз, когда текст редактируется). С другой стороны, если это false, DefaultFormatter не публикует правки обратно в JFormattedTextField. Таким образом, значение JFormattedTextField изменится только при вызове commitEdit на JFormattedTextField, обычно при нажатии клавиши Enter или потере фокуса JFormattedTextField.

Параметры:
commit - Используется для указания того, когда правки сохраняются обратно в JTextComponent

getCommitsOnValidEdit

public boolean getCommitsOnValidEdit()

Возвращает, когда правки публикуются обратно в JFormattedTextField.

Возвращает:
true, если правки сохраняются после каждой корректной правки

setOverwriteMode

public void setOverwriteMode(boolean overwriteMode)

Настраивает поведение при вставке символов. Если overwriteMode имеет значение true (по умолчанию), новые символы перезаписывают существующие символы в модели.

Параметры:
overwriteMode - Указывает, используется ли режим перезаписи или наложения

getOverwriteMode

public boolean getOverwriteMode()

Возвращает поведение при вставке символов.

Возвращает:
true, если новые символы перезаписывают существующие символы

setAllowsInvalid

public void setAllowsInvalid(boolean allowsInvalid)

Устанавливает, разрешено ли временно редактировать недопустимое значение (то есть stringToValue выбрасывает ParseException). Часто удобно разрешать пользователю временно вводить недопустимое значение.

Параметры:
allowsInvalid - Используется для указания, должно ли редактируемое значение всегда быть допустимым

getAllowsInvalid

public boolean getAllowsInvalid()

Возвращает, разрешено ли временно редактировать недопустимое значение.

Возвращает:
false, если редактируемое значение должно всегда быть допустимым

setValueClass

public void setValueClass(Class<?> valueClass)

Устанавливает класс, используемый для создания новых объектов. Если переданный класс не имеет единственного конструктора, принимающего строку, будут использоваться строковые значения.

Параметры:
valueClass - Класс, используемый для построения возвращаемого значения из stringToValue

getValueClass

public Class<?> getValueClass()

Возвращает класс, используемый для создания новых объектов.

Возвращает:
Класс, используемый для построения возвращаемого значения из stringToValue

stringToValue

public Object stringToValue(String string)
                     throws ParseException

Преобразует переданную строку в экземпляр getValueClass с помощью конструктора, принимающего строковый аргумент. Если getValueClass возвращает null, используется класс текущего значения в JFormattedTextField. Если это null, возвращается строка. Если конструктор выбрасывает исключение, выбрасывается ParseException. Если нет единственного конструктора, принимающего строку, возвращается string.

Определено в:
stringToValue в классе JFormattedTextField.AbstractFormatter
Параметры:
string - Строка для преобразования
Возвращает:
Объектное представление текста
Исключения:
ParseException - если при преобразовании произошла ошибка

valueToString

public String valueToString(Object value)
                     throws ParseException

Преобразует переданный объект в строку с помощью метода toString.

Определено в:
valueToString в классе JFormattedTextField.AbstractFormatter
Параметры:
value - Значение для преобразования
Возвращает:
Строковое представление значения
Исключения:
ParseException - если при преобразовании произошла ошибка

getDocumentFilter

protected DocumentFilter getDocumentFilter()

Возвращает DocumentFilter, используемый для ограничения символов, которые могут быть введены в JFormattedTextField.

Overrides:
getDocumentFilter в классе JFormattedTextField.AbstractFormatter
Возвращает:
DocumentFilter для ограничения правок

getNavigationFilter

protected NavigationFilter getNavigationFilter()

Возвращает NavigationFilter, используемый для ограничения местоположения курсора.

Overrides:
getNavigationFilter в классе JFormattedTextField.AbstractFormatter
Возвращает:
NavigationFilter для ограничения навигации

clone

public Object clone()
             throws CloneNotSupportedException

Создаёт копию DefaultFormatter.

Overrides:
clone в классе JFormattedTextField.AbstractFormatter
Возвращает:
копию DefaultFormatter
Исключения:
CloneNotSupportedException - если класс объекта не поддерживает интерфейс Cloneable. Подклассы, переопределяющие метод clone, также могут выбросить это исключение, чтобы указать, что экземпляр не может быть скопирован.
См. также:
Cloneable

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/swing/text/DefaultFormatter.html

Spec-Zone .ru
спецификации, руководства, описания, API