x
 
Максим Пономарёв
13 июля 2010

Здравствуйте!

  • Столкнулся с такой проблемой: необходимо сделать выбор номера из очень большого диапазона чисел, например, 1—29999 или 60000—99999 и т. п. Надумал два варианта:
  • выпадающий список — как меню в Виндоусе (на рисунке сверху);
  • ввод каждой цифры отдельно — при наведении курсора циферка выделяется, при нажатии на правый нижний квадратик выезжают возможные для ввода циферки от 0 до 9 (на рисунке, соответственно, снизу).

Светло-серым выделены цифры, которые выбрать нельзя (номер уже занят).

Оба варианта мне не очень нравятся. Первый — громоздкий. Второй, наверное, не очень понятный. Хочется услышать ваши советы, как улучшить или изменить это. Или как вообще грамотно сделать выбор из огромного диапазона. Заранее благодарю.



Максим, мне кажется, вы перемудрили.

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

Ввод чисел

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

Интерфейс и информация — дисциплина Школы дизайнеров. Набор открыт. Чем раньше поступите, тем ниже стоимость и выше шанс на бесплатное место.
 

Поделиться
Отправить

Комментарии

Никита Листратов
13 июля 2010

А зачем вообще выводить номера, которые заняты, при их присвоении? При редактировании можно, а тут я бы просто оставил вариант Бирмана, но номера, которые уже заняты, выкинул был из «выпадайки».

Также внизу добавил бы диапазон не выбранных номеров — кликнул мышкой в понравившейся/нужный, и система сама присвоила первый пустой номер из выбранного диапазона.

Алексей Мельников
13 июля 2010

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

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

Денис Братчук
13 июля 2010

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

Также неясно назначение надписи «присвоить».

Дима Аркатов
13 июля 2010

Полям для ввода чисел иногда крайне полезно понимать не только цифры. Их можно научить считать:

Саша Сергеев
13 июля 2010

Аналогично примеру ящика — почтовый индекс. Это шестизначное число (если речь о РФ), но не любое, и никому не приходит в голову делать выпадающий список для его ввода.

Даже для двухбуквенного сокращения названия штата в США не рекомендуется прибегать к выпадающим спискам. Ввод с клавиатуры нисколько не сложнее, чем некоторым дизайнерам кажется.

Вот Нильсен о выпадающих меню и элементах форм: http://www.useit.com/alertbox/20001112.html

Максим Пономарёв
13 июля 2010

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

Спасибо, Илья, о самом простом я и не подумал.

Денис Чмель
13 июля 2010

Полностью согласен с Ильёй. Айдишники хороши только для машин (и людей, стремящихся занять их место). Нормальному же человеку нужен мнемокод который легко вспомнить, логично запомнить. Причём один объект может иметь несколько (ВАЗ 2107 она же «семерка»).

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

И ещё, «присвоить» в широком кругу непрограммистов запредельно далеко от «ввести».

Женя Бакст
13 июля 2010

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

Я как раз размышлял о подобной проблеме, а тут бац! — человек уже спрашивает.

Слава Советам!

Антон Иванов
29 декабря 2020

Пример формы в приложении для поиска автобусных маршрутов, в которую вводят только определённые номера. Я уже ввёл «60», поэтому некоторые цифры отключились, не давая пользователю сделать ошибку. Здесь можно ввести только номер 601, 606 и 608.


Цель рубрики — обсуждение вопросов дизайна всех видов, текста в дизайне и взаимоотношений дизайнеров с клиентами.

Мы публикуем комментарии, которые добавляют к уже сказанному новые мысли и хорошие примеры. Мы ожидаем, что такие комментарии составят около 20% от общего числа.

Решение о публикации принимается один раз; мы не имеем возможности комментировать или пересматривать свое решение, хотя оно может быть ошибочно. Уже опубликованные комментарии могут быть удалены через некоторое время, если без них обсуждение не становится менее ценным или интересным.

Вот такой веб 2.0.

4 2 Иногда люди, когда пытаются оценить, насколько выгодно расположены элементы на форме, рисуют линию, по которой якобы глаз скользит 2 11




Недавно всплыло

Что вы думаете о способе указывать цвету прозрачность в шестнадцатеричном виде вместо более традиционного RGBA? 3 Расскажите о клише и устойчивых выражениях 13 Несмотря на то, что между нами была договорённость о работе по ФФФ, клиент был в бешенстве 5 Как сделать нагляднее таблицу перфорированных лотков? Часть вторая 5