09
марта
2008

Дизайн интерфейсов: фокусировка

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

Существует несколько типовых способов переключения фокуса:

  • С помощью мыши (тачпада или иного подобного графического манипулятора) можно выбирать активные элементы ввода в произвольном порядке.
  • С помощью клавиатуры:
    • Последовательным переходом между элементами в прямом или обратном порядке (обычно для этого используются Tab и Shift-Tab соответственно).
    • В произвольном порядке, с помощью горячих клавиш (при наличии таковых).

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

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

Такое простейшее действие, как сохранение файла, гораздо естесственнее и логичнее выполнять нажатием Ctrl-S, чем с помощью мыши. В последнем случае приходится отрывать руку от клавиатуры, находить взглядом кнопку «Save», целиться в нее курсором (так, чтобы случайно не нажать на находящуюся рядом «Print»), после чего возвращаться к клавиатуре. Множество лишних действий.

Типовой ошибкой в построении интерфейсов является неэффективное определение последовательности переключения между его элементами. Зачастую эта последовательность не соответствует естесственному человеческому представлению о порядке следования элементов множества (чаще всего — слева направо и сверху вниз). В результате, серия нажатий Tab приводит к бессистемным «прыжкам» фокуса по окну в непредсказуемом порядке.

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

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

Пример из жизни: в форме отправки сообщений одного веб-приложения, для клавиатурного переключения из строки «Тема» в основное поле ввода текста, было необходимо 6 раз нажать клавишу Tab. Дело в том, что фокус считал своей обязанностью предварительно «пробежать» весь ряд кнопок на панели инструментов.

Еще одной важной деталью, которой следует уделить должное внимание при проектировании интерфейсов, является автоматический выбор фокуса ввода. В некоторых случаях, определение активного элемента становится настолько очевидным, что отсутствие автопереключения на него можно расценивать как ошибку. Так, при отображении модальных диалоговых окон, обязательным является фокусировка на кнопке Ok (или Cancel — в зависимости от ситуации), чтобы одним нажатием клавиши можно было подтвердить или отменить действие.

С другой стороны, неусместное переключение фокуса системой обычно крайне нежелательно и часто вызывает раздражение. Пример тому — привычка некоторых программ предлагать обновление с помощью того же модального окна, самопроизвольно выскакивающего посреди работы.

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

Ссылки по теме

Написать комментарий

Можно использовать следующие HTML теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> .