Виджет Form позволяет проверять вводимые пользователем данные и выводить сообщение в случае неудачи проверки. Этот виджет может содержать любое количество полей формы, которые обычно являются полями ввода, такими как TextFields, Dropdown, RadioButton или Date/Time picker.
Например, вы можете использовать его для проверки того, указал ли пользователь действительный email и пароль. Это упрощает обработку пользовательского ввода и гарантирует правильность данных перед отправкой на сервер или локальным хранением.

Добавление виджета Form
Давайте посмотрим, как добавить виджет Form, создав пример регистрации. Вот как это выглядит:

Создание и проверка формы включает следующие шаги:
- Добавление полей ввода
- Добавление валидаций
- Добавление действия проверки
1. Добавление полей ввода
Виджет формы может валидироваться только при наличии полей ввода. Вот пример добавления полей ввода для формы регистрации.
- Сначала добавьте сам виджет Form из Элементов формы.
- Внутри формы добавьте виджет Column из вкладки Layout Elements.
- Теперь добавьте два текстовых поля (одно для электронной почты и одно для пароля).
- Добавьте виджет Button, а затем добавьте действие Date/Time Picker для получения даты рождения.
- Добавьте еще одну кнопку для проверки и отправки формы.
Вот как это выглядит:

2. Добавление валидации
Валидация — это процесс проверки корректности вводимых пользователем данных и обеспечения их соответствия определенным критериям или требованиям. Это может включать проверку наличия обязательных полей, проверку того, что значение находится в определенном диапазоне или формате, или проверку на соответствие пользовательскому шаблону.
После добавления полей ввода они будут доступны для проверки с помощью свойств виджета формы. Вот как это делается:
- Выберите виджет Form и перейдите в раздел Properties Panel > Validate.
- Определите текстовое поле, для которого вы хотите добавить валидацию, и установите флажок справа.
- В поле ввода Error Message укажите сообщение, которое будет отображаться (под текстовым полем), если пользователь оставит текстовое поле пустым.
- Вы также можете указать Min Required Character и Max Allowed Characters.
- Min Required Character: Это минимальный символ, необходимый для прохождения проверки.
- Например, если вы зададите значение 9, а пользователь введет значение a@a.com (это 6 символов), то проверка не пройдет, и будет выведено сообщение об ошибке.В поле ввода Minimum Character Error Text введите сообщение, которое будет отображаться, если пользователь не введет минимально необходимое количество символов.
- Максимальное количество разрешенных символов: Это максимальное количество символов, допустимое для прохождения проверки. Например, если вы зададите значение 15 и пользователь введет пароль, превышающий 15 символов, то проверка не пройдет, и будет выведено сообщение об ошибке.
- В поле ввода Max Allowed Characters Error Text введите сообщение, которое будет отображаться, если пользователь введет больше максимально допустимого количества символов.
- Min Required Character: Это минимальный символ, необходимый для прохождения проверки.

- Вы также можете выбрать проверку ввода с помощью наших предопределенных валидаторов или создать собственный. Для этого вы можете установить нужный вам валидатор текста.
- Если нужного валидатора нет в списке, вы можете выбрать Custom Regex и указать свой собственный Regex (Dart/JS). Вот несколько примеров Custom Regex:
- Также укажите сообщение в Invalid Text Error Text. Оно будет отображаться, если проверка пользовательского регекса не прошла.
- Вы также можете добавить проверку на определенные действия, которые могут быть использованы внутри формы, такие как Date/Time Picker и PlacePicker. Для этого найдите название действия и поставьте галочку справа.
- Теперь необходимо включить опцию Add Action on Error и установить соответствующий Action Type. Это действие будет срабатывать в случае ошибки проверки. Например, в данном случае, если форма отправлена без выбора даты рождения, вы можете добавить действие Show Snackbar, предлагающее пользователю выбрать дату.

3. Adding validate action
О том, как добавить действие для проверки формы, вы узнаете на следующей странице.
Автоматическая валидация
Вместо того чтобы выводить сообщение об ошибке после того, как пользователь отправит форму, вы можете предоставлять обратную связь в реальном времени по мере ввода текста в виджете TextField, чтобы указать на ошибки валидации. Эта функция может быть особенно полезна для длинных форм, где она может сэкономить время и усилия пользователя.
Чтобы автоматически проверить форму, выберите TextField > перейдите на панель свойств > Add validations > и включите опцию Automatically Validate.


Проверка формы по текстовому полю при отправке
Вы также можете проверить форму, когда закончите вводить значение в текстовое поле, используя действие On Submit.

Чтобы проверить форму на TextField On Submit:
- Выберите виджет TextField и выберите Actions на панели Properties (правое меню).
- Нажмите кнопку + Добавить действие и убедитесь, что Тип действия установлен на On Submit.
- Найдите и выберите действие Validate Form (в разделе UI Interactions).
- Установите для параметра Select Form to Validate имя вашей формы.

Настройка
Вы можете настроить внешний вид и поведение этого виджета с помощью различных свойств, доступных на панели свойств.
Показать/скрыть виджет
Узнайте, как показать или скрыть любой виджет с помощью свойства «Условная видимость».
Отзывчивая видимость
Узнайте, как добавить отз
Добавить отступы и выравнивание
Узнайте, как добавить подложку и выравнивание к любому виджету.
Изменение ширины
По умолчанию виджет Form занимает все доступное пространство в горизонтальном направлении. Возможно, вы захотите ограничить его ширину, чтобы она соответствовала вашему дизайну. Посмотрите, как изменить ширину этого виджета.