Поле с временем TimePicker

Поле с временем помогает ввести время с клавиатуры или выбрать его мышью.

Когда использовать

Используйте поле с временем, когда нужно ввести точное время суток. Например, в расписаниях.

Описание работы

Когда поле получает фокус, курсор встаёт в блок с часами.

Сначала пустое поле с иконкой часов, затем оно же в фокусе: на месте часов и минут серые прочерки, блок часов выделен

Как только часы заполнены, курсор переходит на минуты.

Сначала в поле в фокусе выделен блок часов, затем ввод цифр «2» и «0», после этого в поле «20:» и выделен блок минут

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

Сначала в поле «20:» выделен блок минут, затем ввод цифр «4» и «5», после этого в поле «22:45», оно по-прежнему в фокусе

Если заполнены только часы, то по потере фокуса минуты заполнятся нулями.

Сначала в поле в фокусе «09:» и пустой блок минут, затем после клика вне поля в нём «09:00»

Если заполнена только одна цифра минут, то по потере фокуса перед ней подставится ноль.

Сначала в поле в фокусе «09:» и одна цифра минут «4», затем после клика вне поля в нём «09:04»

Значения из справочника

Используйте раскрывающийся список с готовыми значениями для сценария пользователя — так он быстрее заполнит нужное время.

Пустое поле с временем в фокусе, под ним список: «09:00», «09:15», «09:30», «09:45», «10:00»

Например, для расписания можно добавить значения с шагом 15 минут.

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

Два поля с временем через тире: в первом «09:00», второе пустое и в фокусе, под ним список от «09:15» до «10:30», у каждого значения серым указана длительность — от «15 мин» до «1 час 30 мин»

Например, для расписания можно указать продолжительность каждого интервала.

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

Сначала пустое поле в фокусе со списком от «09:00» до «11:00» с шагом полчаса, затем ввод цифры «9», после этого в поле «09:», в списке остались «09:00» и «09:30», первый пункт подсвечен

Если совпадений с введённым значением нет, список скрывается и остаётся только ручной ввод.

Сначала в поле «20:» и список от «20:00» до «20:45». После ввода «0» в поле «22:0», в списке один подсвеченный пункт «20:00». После ввода «4» в поле «22:04», списка нет.

Если выбрать значение мышью, список скроется, а поле не потеряет фокус.

Сначала пустое поле в фокусе со списком от «09:00» до «09:45», курсор мыши на пункте «09:15», затем в поле «09:15», список закрыт, поле по-прежнему в фокусе

Селект

Если в вашем продукте можно выбирать только из готового списка, а набирать с клавиатуры нельзя, используйте другой контрол — раскрывающийся список.

Раскрывающийся список «Время отправки»: сначала пустой под курсором мыши, затем открыт список от «15:00» до «16:00» с курсором на «15:15», после этого выбрано «15:15»

Секунды

Добавляйте блок с секундами, только если в сервисе есть сценарии, где их вводят. По умолчанию он не отображается.

Пустое поле с временем в фокусе с блоками часов, минут и секунд, выделен блок часов

Быстрый ввод

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

Пустое поле с временем, под ним в строку подчёркнутые ссылки «Сейчас», «16:30», «16:45» и «17:00»

Часовой пояс

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

Поле со значением «22:04», справа серая подпись «UTC+3 Москва»

Формат времени

По умолчанию поле работает в 24-часовом формате. Когда нужно, переключите его на 12-часовой. Используйте переключатель.

Поле со значением «11:04», справа переключатель «AM» и «PM», выбрано «AM»

Дизайн

Поле с временем выглядит как обычное поле ввода с иконкой часов и бывает трёх размеров. Подробнее — в гайде «Поле ввода».

Валидация

Часы валидируются по формату времени:

  • в 24-часовом можно ввести от 00 до 23,
  • в 12-часовом для AM — от 00 до 11, для PM — от 12 до 23.

Если значение больше допустимого, поле мигает и не меняется.

Минуты и секунды валидируются одинаково: можно ввести от 00 до 59. Если ввести больше, поле примет первую цифру, но на второй мигнёт — так пользователь успеет исправить опечатку до автоформата. Когда поле теряет фокус, оно приводит значение к правильному формату.

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

Пустое поле с временем в красной рамке, под ним красный текст «Укажите время»Поле «22:04» в красной рамке, под ним красный текст «Выберите значение из справочника»Поле «19:30» в красной рамке, под ним красный текст «Бухгалтер принимает только до 18:00, укажите другое время»

Подробнее — в гайде «Валидация».

Доступность

Управление клавиатурой

В часы можно ввести одну цифру и сразу перейти к минутам: кликнуть по ним, нажать Space, Tab или →. Фокус перейдёт на минуты, а к часам добавится ведущий ноль.

Сначала в блок часов введена цифра «2», в списке подсвечено «02:00», затем нажатие Space, Tab или стрелки вправо, после этого в поле «02:», выделен блок минут, список тот же

Клавиша ↓ выделяет первый элемент списка.

Сначала пустое поле в фокусе со списком от «09:00» до «10:00», затем нажатие стрелки вниз, после этого в списке подсвечен первый пункт «09:00»

Enter выбирает выделенное значение.

Сначала в списке под пустым полем подсвечено «09:00», затем нажатие Enter, после этого в поле «09:00», список закрыт, поле в фокусе

Клавиши ← и → перемещают курсор между часами и минутами.

Сначала в пустом поле в фокусе выделен блок часов, затем нажатие стрелки вправо или влево, после этого выделен блок минут

Backspace удаляет цифры активного блока с конца по одной, а Delete очищает весь блок в фокусе.

Сначала в поле «22:04» выделены минуты, затем нажатие Backspace, после этого в поле «22:0» — последняя цифра стёртаСначала в поле «22:04» выделены минуты, затем нажатие Delete, после этого в поле «22:» и пустой блок минут