Spec-Zone.ru › OpenJavaFX 17

Класс TextFormatter<V>

java.lang.Object
fx.scene.control.TextFormatter<V>
Параметры типа:
V - тип значения
public class TextFormatter<V>
extends Object
Форматировщик описывает формат текстового TextInputControl, используя два различных механизма:
  • Фильтр (getFilter()), который может перехватывать и изменять пользовательский ввод. Это помогает сохранить текст в нужном формате. Для предоставления начального текста можно использовать поставщик текста по умолчанию.
  • Конвертер значений (getValueConverter()) и значение (valueProperty()) могут использоваться для предоставления специального формата, представляющего значение типа V. Если элемент управления разрешает редактирование, и текст меняется пользователем, значение обновляется для соответствия тексту.

Возможен форматировщик только с фильтром или конвертером значений. Однако, если конвертер значений не задан, установка значения приведет к IllegalStateException, и значение всегда будет null.

Поскольку Formatter содержит значение, представляющее состояние TextInputControl, которому он в данный момент назначен, один экземпляр Formatter может использоваться только в одном TextInputControl за раз.

С момента:
JavaFX 8u40

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

Свойства
Тип Свойство Описание
ObjectProperty<V> value
Текущее значение для этого форматировщика.

Краткое описание вложенных классов

Вложенные классы
Модификатор и тип Класс Описание
static class  TextFormatter.Change
Содержит состояние, представляющее изменение содержимого или выбора для TextInputControl.

Краткое описание полей

Поля
Модификатор и тип Поле Описание
static StringConverter<String> IDENTITY_STRING_CONVERTER
Этот конвертер строк преобразует текст в то же строковое значение.

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

Конструкторы
Конструктор Описание
TextFormatter​(UnaryOperator<TextFormatter.Change> filter)
Создает новый форматировщик с заданным фильтром.
TextFormatter​(StringConverter<V> valueConverter)
Создает новый форматировщик с заданным конвертером значений.
TextFormatter​(StringConverter<V> valueConverter, V defaultValue)
Создает новый форматировщик с заданным конвертером значений и значением по умолчанию.
TextFormatter​(StringConverter<V> valueConverter, V defaultValue, UnaryOperator<TextFormatter.Change> filter)
Создает новый форматировщик с заданным фильтром, конвертером значений и значением по умолчанию.

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

Модификатор и тип Метод Описание
UnaryOperator<TextFormatter.Change> getFilter()
Фильтр позволяет пользователю перехватывать и изменять любое изменение содержимого текста.
V getValue()
Получает значение свойства value.
StringConverter<V> getValueConverter()
Конвертер между значениями и текстом.
void setValue​(V value)
Устанавливает значение свойства value.
ObjectProperty<V> valueProperty()
Текущее значение для этого форматировщика.

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

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

Подробности свойства

значение

public final ObjectProperty<V> valueProperty
Текущее значение для этого форматера. Когда форматер устанавливается на TextInputControl и имеет valueConverter, значение устанавливается элементом управления при подтверждении текста.
См. также:
getValue(), setValue(V)

Подробности поля

IDENTITY_STRING_CONVERTER

public static final StringConverter<String> IDENTITY_STRING_CONVERTER
Этот преобразователь строк преобразует текст в то же значение строки. Это может быть полезно в тех случаях, когда вы хотите манипулировать текстом через значение или вам нужно предоставить значение текста по умолчанию.

Подробности конструктора

TextFormatter

public TextFormatter(UnaryOperator<TextFormatter.Change> filter)
Создаёт новый форматер с предоставленным фильтром.
Параметры:
filter - Фильтр для использования в этом форматере или null

TextFormatter

public TextFormatter(StringConverter<V> valueConverter, V defaultValue, UnaryOperator<TextFormatter.Change> filter)
Создаёт новый форматер с предоставленным фильтром, преобразователем значений и значением по умолчанию.
Параметры:
valueConverter - Преобразователь значений для использования в этом форматере или null.
defaultValue - значение по умолчанию.
filter - Фильтр для использования в этом форматере или null

TextFormatter

public TextFormatter(StringConverter<V> valueConverter, V defaultValue)
Создаёт новый форматер с предоставленным преобразователем значений и значением по умолчанию.
Параметры:
valueConverter - Преобразователь значений для использования в этом форматере. Он не должен быть null.
defaultValue - значение по умолчанию

TextFormatter

public TextFormatter(StringConverter<V> valueConverter)
Создаёт новый форматер с предоставленным преобразователем значений. Значение по умолчанию будет null.
Параметры:
valueConverter - Преобразователь значений для использования в этом форматере. Он не должен быть null.

Подробности метода

getValueConverter

public final StringConverter<V> getValueConverter()
Преобразователь между значениями и текстом. Он поддерживает «связь» между TextInputControl.textProperty() и valueProperty(). Значение обновляется, когда элемент управления теряет фокус или оно подтверждается (только для TextField). Установка значения обновит текст элемента управления, используя предоставленный преобразователь. Если невозможно преобразовать текст в значение, должно быть выброшено исключение.
Возвращает:
StringConverter для значений или null, если он не предоставлен
См. также:
TextInputControl.commitValue(), TextInputControl.cancelEdit()

getFilter

public final UnaryOperator<TextFormatter.Change> getFilter()
Фильтр позволяет пользователю перехватывать и изменять любые изменения, внесённые в содержимое текста.

Сам фильтр является UnaryOperator, который принимает объект TextFormatter.Change. Он должен вернуть объект TextFormatter.Change, содержащий фактическое (отфильтрованное) изменение. Возврат null отклоняет изменение.

Возвращает:
фильтр для этого форматера или null, если его нет

valueProperty

public final ObjectProperty<V> valueProperty()
Текущее значение для этого форматера. Когда форматер устанавливается на TextInputControl и имеет valueConverter, значение устанавливается элементом управления при подтверждении текста.
См. также:
getValue(), setValue(V)

setValue

public final void setValue(V value)
Устанавливает значение свойства value.
Описание свойства:
Текущее значение для этого форматера. Когда форматер устанавливается на TextInputControl и имеет valueConverter, значение устанавливается элементом управления при подтверждении текста.

getValue

public final V getValue()
Получает значение свойства value.
Описание свойства:
Текущее значение для этого форматера. Когда форматер устанавливается на TextInputControl и имеет valueConverter, значение устанавливается элементом управления при подтверждении текста.

© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

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