Interested Article - Фокус (пользовательский интерфейс)

( жарг. Мохнатая кнопка )
Фокус на кнопке «Отмена». Нажатие ↵ Enter будет равноценно клику мышью по этой кнопке.

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

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

В вычислительной технике фокус указывает на выбор элемента графического интерфейса пользователя . Текст, введённый с клавиатуры или вставленный из буфера обмена , отправляется компоненту, у которого есть фокус. Перемещение фокуса с определённого элемента пользовательского интерфейса называется событием размытия ( англ. blur ) по отношению к этому элементу. Как правило, фокус снимается с элемента, отдавая фокус другому элементу. Это означает, что события фокуса и размытия обычно происходят практически одновременно, но в отношении разных элементов пользовательского интерфейса: один получает фокус, а другой размывается.

Концепция аналогична курсору в текстовой среде. Однако при рассмотрении графического интерфейса также задействован указатель мыши. Перемещение мыши обычно приводит к перемещению указателя мыши без изменения фокуса. Фокус обычно можно изменить, щёлкнув компонент, который может получить фокус с помощью мыши. Многие рабочие столы также позволяют изменять фокус с помощью клавиатуры. По соглашению, клавиша Tab ↹ используется для перемещения фокуса на следующий фокусируемый компонент, а ⇧ Shift + Tab ↹ — на предыдущий. Когда впервые появились графические интерфейсы, на многих компьютерах не было мышей, поэтому эта альтернатива была необходима. Эта функция упрощает использование пользовательского интерфейса для людей, которым сложно пользоваться мышью. В определённых обстоятельствах для перемещения фокуса также можно использовать клавиши управления курсором .

Смысл и предназначение

Пользовательский интерфейс может иметь несколько элементов, способных каким-либо образом реагировать на клавиатурный ввод. Однако, из соображений здравого смысла, при вводе с клавиатуры каких-либо данных (или команд) получать их должен какой-либо один элемент, из расположенных в окне , которому пользователь и адресует эти данные, осуществляя ввод. Поэтому при проектировании логики работы пользовательского интерфейса вводится понятия фокуса как совокупности:

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

Говорят, что элемент обладает фокусом или фокус находится на элементе , если при возникновении клавиатурного события именно этот элемент среагирует определённым образом на событие. Чтобы пользователь мог определить, какой из элементов в данный момент обладает фокусом, такой элемент обычно особым образом графически выделяется среди остальных аналогичных элементов.

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

Деактивированные элементы обычно не могут иметь фокуса.

Управление фокусом

Циклическое переключение фокуса с помощью клавиши Tab ↹ .

Для увеличения удобства работы пользователю часто даётся несколько возможностей переключать фокус с одного элемента на другой. Разные операционные системы и приложения для них могут иметь разные способы. Обычно переместить фокус с одного элемента на другой можно при помощи определённых клавиш клавиатуры (например Tab ↹ и ⇧ Shift + Tab ↹ для переключения фокуса на следующий/предыдущий элемент в Windows ), либо при помощи мыши. Существуют различные модели переключения фокуса мышью: так, например, в Windows или MacOS элемент получает фокус после щелчка мышью на нём; в некоторых менеджерах окон X11 достаточно просто поместить указатель мыши над элементом, чтобы он получил фокус.

Click to focus (Нажмите, чтобы сфокусироваться)

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

Focus follows pointer (Фокус следует за указателем)

Другой распространённой политикой в системах Unix , использующих X Window System (X11) является политика «focus follows mouse» (Фокус следует за указателем) или FFM, при которой фокус автоматически следует за текущим расположением указателя. Окно в фокусе не обязательно поднимается, его части могут оставаться под другими окнами. Оконные менеджеры с этой политикой обычно предлагают «автоподъём», который поднимает окно, когда оно сфокусировано, обычно после настраиваемой короткой задержки. Возможное следствие политики followfocus состоит в том, что ни одно окно не имеет фокуса, когда указатель перемещается над фоном без окна под ним. В противном случае фокус просто остаётся в последнем окне.

Sloppy focus (Небрежный фокус)

Модель sloppyfocus — это вариант модели followfocus. Это позволяет продолжить сбор ввода последним окном в фокусе, когда указатель мыши перемещается от любого окна, например, над строкой меню или областью рабочего стола.

Ссылки

Примечания

  1. Клавиатурное событие — нажатие, удержание или отпускание какой-либо клавиши или клавиш клавиатуры.
  2. . Cunningham & Cunningham (25 февраля 2012). Дата обращения: 16 января 2016. 9 июля 2016 года.
Источник —

Same as Фокус (пользовательский интерфейс)