Spec-Zone.ru › OpenJDK 24

Класс DefaultFormatter

java.lang.Object
javax.swing.JFormattedTextField.AbstractFormatter
javax.swing.text.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)
Устанавливает класс, используемый для создания новых объектов. Если переданный класс не имеет единственного конструктора с аргументом String, будут использоваться строковые значения.
Параметры:
valueClass - Класс, используемый для построения возвращаемого значения из stringToValue

getValueClass

public Class<?> getValueClass()
Возвращает класс, используемый для создания новых объектов.
Возвращает:
Класс, используемый для построения возвращаемого значения из stringToValue

stringToValue

public Object stringToValue(String string) throws ParseException
Преобразует переданную строку в экземпляр getValueClass с помощью конструктора, принимающего строковый аргумент. Если getValueClass возвращает null, используется класс текущего значения в JFormattedTextField. Если это null, возвращается строка. Если конструктор вызывает исключение, выбрасывается ParseException. Если нет конструктора с одним аргументом String, возвращается 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, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/swing/text/DefaultFormatter.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API