numberField

numberField имеет многие из тех же функций, что и textField, но принимает только числовой ввод.

XML-элемент

numberField

Java-класс

JmixNumberField

Основы

Пример использования numberField:

<numberField id="numberField" label="NumberField"/>
<numberField id="maxMinNumberField" label="With max/min" max="100" min="10"
              helperText="Max value is 100, min value is 10"/>
numberField не поддерживает форматирование. Используйте TypedTextField, когда требуется локализованное форматирование чисел или поддержка различных типов данных.

numberField связанный с данными

Используйте атрибуты dataContainer и property, чтобы связать numberField с атрибутом сущности. Контейнер данных предоставляет экземпляр сущности, а property указывает редактируемый числовой атрибут.

Следующий пример создаёт numberField, связанный с данными. Атрибут сущности должен быть числового типа.

XML
<data>
    <instance id="pointDc"
              class="io.jmix.uisamples.entity.Point"
              fetchPlan="_local"/>
</data>
<layout>
    <numberField id="numberField" label="Field connected to a container" width="15em"
                     dataContainer="pointDc" property="x"/>
    <hbox>
        <span text="Value in the container:"/>
        <span id="spanValue"/>
    </hbox>
</layout>
Java
@ViewComponent
protected InstanceContainer<Point> pointDc;
@ViewComponent
protected Span spanValue;

@Autowired
protected Metadata metadata;

@Subscribe
protected void onInit(InitEvent event) {
    Point point = metadata.create(Point.class);
    point.setX(31.32);
    pointDc.setItem(point);
}

@Subscribe("numberField")
protected void onNumberFieldValueChange(ComponentValueChangeEvent<NumberField, Number> changeEvent) {
    spanValue.setText(String.valueOf(pointDc.getItem().getX()));
}

Валидация

Чтобы проверить значения, введённые в компонент numberField, вы можете использовать валидатор в элементе validators.

Доступны следующие предопределённые валидаторы для numberField:

XML-элемент

validators

Предопределённые валидаторы

custom - doubleMax - doubleMin - negative - negativeOrZero - notNull - positive - positiveOrZero

Варианты темы

Используйте атрибут themeNames, чтобы применить один или несколько вариантов темы.

Вариант Описание Поддерживается в

small

Уменьшает размер компонента.

Aura, Lumo

align-left

Выравнивает значение поля по левому краю.

Aura, Lumo

align-center

Выравнивает значение поля по центру.

Aura, Lumo

align-right

Выравнивает значение поля по правому краю.

Aura, Lumo

helper-above-field

Размещает вспомогательный текст над полем, под меткой.

Aura, Lumo

Атрибуты

numberField имеет следующие уникальные атрибуты:

Имя Описание По умолчанию

autoselect

Определяет, выделяется ли текст автоматически при получении полем фокуса.

clearButtonVisible

Определяет, отображается ли в поле кнопка очистки.

false

max

Устанавливает максимум.

min

Устанавливает минимум.

step

Устанавливает шаг.

stepButtonsVisible

Управляет отображением кнопок увеличения и уменьшения.

value

Задаёт значение компонента.

numberField имеет следующие общие атрибуты:

Обработчики

numberField имеет следующие уникальные обработчики:

Имя Описание

validator

Проверяет значение компонента.

numberField имеет следующие общие обработчики:

Элементы

Компонент numberField может содержать следующие вложенные элементы: prefix, suffix, tooltip, и validator.

Смотрите также