- Фокус (пользовательский интерфейс)
-
Для улучшения этой статьи желательно?: - Проставив сноски, внести более точные указания на источники.
Фокус, фокус ввода — концептуальное понятие в построении графического пользовательского интерфейса, означающее наличие у определённого элемента этого интерфейса исключительного права принимать клавиатурный ввод. Название является аллюзией на способность человеческого зрения фокусировать взгляд на небольшом участке поля зрения.
Не следует путать фокус с выделением — фокус распространяется на элементы интерфейса, в то время как выделение — на их содержимое. Кроме того, фокус всегда находится на каком-то строго одном элементе, тогда как выделение может быть множественным.
Содержание
Смысл и предназначение
Пользовательский интерфейс может иметь несколько элементов, способных каким-либо образом реагировать на клавиатурный ввод. Однако, из соображений здравого смысла, при вводе с клавиатуры каких-либо данных (или команд) получать их должен какой-либо один элемент, из расположенных в окне, которому пользователь и адресует эти данные, осуществляя ввод. Поэтому при проектировании логики работы пользовательского интерфейса вводится понятия фокуса как совокупности:
- Визуальных признаков элемента, которые сообщают пользователю, что именно этот элемент получит вводимые с клавиатуры данные,
- Внутренних данных приложения, позволяющих той части компьютерной системы, которая отвечает за диспетчеризацию клавиатурных событий[1], переадресовать клавиатурные события непосредственно элементу.
Говорят, что элемент обладает фокусом или фокус находится на элементе, если при возникновении клавиатурного события именно этот элемент среагирует определённым образом на событие. Чтобы пользователь мог определить, какой из элементов в данный момент обладает фокусом, такой элемент обычно особым образом графически выделяется среди остальных аналогичных элементов.
Если система не предполагает наличие клавиатуры (даже виртуальной) как устройства ввода, или в любой момент времени существует только один элемент, способный реагировать на клавиатурные события, понятие «фокус» в таких системах не имеет смысла и не используется.
Деактивированные элементы обычно не могут иметь фокуса.
Управление фокусом
Для увеличения удобства работы пользователю часто даётся несколько возможностей переключать фокус с одного элемента на другой. Разные операционные системы и приложения для них могут иметь разные способы. Обычно переместить фокус с одного элемента на другой можно при помощи определённых клавиш клавиатуры (например Tab ⇆ и ⇧ Shift + Tab ⇆ для переключения фокуса на следующий/предыдущий элемент в Windows), либо при помощи мыши. Существуют различные модели переключения фокуса мышью: так, например, в Windows или MacOS элемент получает фокус после щелчка мышью на нём; в некоторых менеджерах окон X11 достаточно просто поместить указатель мыши над элементом, чтобы он получил фокус.
Ссылки
- Статья о клавиатурном фокусе // MSDN (англ.)
Примечания
- ↑ Клавиатурное событие — нажатие, удержание или отпускание какой-либо клавиши или клавиш клавиатуры.
Категория:- Графический интерфейс пользователя
Wikimedia Foundation. 2010.