В вычислениях , фокус указует на акт выбора элемента графического интерфейса пользователя . Текст, введенный с клавиатуры или вставленный из буфера обмена , отправляется компоненту, у которого есть фокус. Перемещение фокуса с определенного элемента пользовательского интерфейса называется событием размытия по отношению к этому элементу. Как правило, фокус снимается с элемента, отдавая фокус другому элементу. Это означает, что события фокуса и размытия обычно происходят практически одновременно, но в отношении разных элементов пользовательского интерфейса: один получает фокус, а другой размывается.
Концепция аналогична курсору в текстовой среде. Однако при рассмотрении графического интерфейса также задействован указатель мыши . Перемещение мыши обычно приводит к перемещению указателя мыши без изменения фокуса. Фокус обычно можно изменить, щелкнув компонент, который может получить фокус с помощью мыши. Многие рабочие столы также позволяют изменять фокус с помощью клавиатуры. По соглашению, Tab ↹клавиша используется для перемещения фокуса на следующий фокусируемый компонент и ⇧ Shift+Tab ↹ на предыдущий. Когда впервые появились графические интерфейсы, на многих компьютерах не было мышей, поэтому эта альтернатива была необходима. Эта функция упрощает использование пользовательского интерфейса для людей, которым сложно пользоваться мышью . В определенных обстоятельствах для перемещения фокуса также можно использовать клавиши со стрелками .
Окно фокус
Поведение фокуса на рабочем столе может регулироваться политиками в управлении окнами .
Нажмите, чтобы сфокусироваться
В большинстве основных пользовательских интерфейсов, например, созданных Microsoft и Apple , часто можно найти политику «фокус следует за щелчком» (или «щелкнуть для фокусировки»), где нужно щелкнуть мышью внутри окна для этого окна. чтобы сосредоточиться. Это также обычно приводит к тому, что окно поднимается над всеми другими окнами на экране. Если используется такая модель фокусировки , как эта, текущее окно приложения продолжает сохранять фокус и собирать ввод, даже если указатель мыши находится над окном другого приложения.
Фокус следует за указателем
Другой распространенной политикой в системах Unix , использующих X Window System (X11), является политика «фокус следует за мышью» (или FFM), при которой фокус автоматически следует за текущим расположением указателя. Окно в фокусе не обязательно поднимается; его части могут оставаться под другими окнами. Оконные менеджеры с этой политикой обычно предлагают «автоподъем», который поднимает окно, когда оно сфокусировано, обычно после настраиваемой короткой задержки. Возможное следствие политики слежения за фокусом состоит в том, что ни одно окно не имеет фокуса, когда указатель перемещается над фоном без окна под ним; в противном случае фокус просто остается в последнем окне.
Неряшливый фокус
Модель sloppyfocus - это вариант модели followfocus. [1] Это позволяет продолжить сбор ввода последним окном в фокусе, когда указатель мыши отодвигается от любого окна, например, над строкой меню или областью рабочего стола.
Модели фокуса, используемые оконными менеджерами X11
Clickfocus | Followfocus | Небрежный фокус | |
---|---|---|---|
aewm [2] | Нет | да | Нет |
aewm ++ [3] | да | Нет | Нет |
AHWM [4] | да | Нет | да |
классно | да | да | да |
CTWM | да | да | да |
dwm [5] | да | да | Нет |
E16 | да | да | Да (по умолчанию) |
evilwm [6] | Нет | да | Нет |
FLWM | Нет | Нет | да |
Fluxbox | да | да | да |
FVWM [α] | да | Да (по умолчанию) | да |
IceWM [7] | да | да | да |
Кармен [8] | да | Нет | Нет |
lwm [9] | да | Нет | да |
TinyWM [10] | Нет | Нет | да |
Прихоть [11] | да | Нет | да |
WindowLab | Да (без автоподъема ) | Нет | Нет |
Xfwm | да | да | да |
Бормотать | да | да | да |
JWM | да | Нет | да |
MWM | да | Нет | Нет |
Внутриоконный компонентный фокус
Отдельные компоненты окна также могут иметь центральное положение. Например, в пакете редактирования текста окно редактирования текста должно иметь фокус, чтобы можно было вводить текст. Когда текст вводится в компонент, он появляется в позиции текстового курсора, который также обычно можно перемещать с помощью указателя мыши.
Какой компонент должен иметь фокус по умолчанию и как фокус должен перемещаться между компонентами - сложные, но важные проблемы в дизайне пользовательского интерфейса. Фокусировка неправильной вещи означает, что пользователю приходится тратить время на перемещение фокуса. И наоборот, если сосредоточить внимание на правильных вещах, это может значительно улучшить пользовательский опыт.
Смотрите также
Рекомендации
- ^ "Основная информация о прихоти" . Каннингем и Каннингем . 25 февраля 2012 . Проверено 16 января 2016 .
- ^ «аэвм - красная фасоль» . 27 декабря 2007 года Архивировано из оригинала 14 января 2016 года . Проверено 16 января 2016 .
- ^ «Руководство по X11 / Window Managers / aewm ++» . Викиучебники . 18 июля 2010 . Проверено 16 января 2016 .
- ^ «AHWM - оконный менеджер Алекса Хиореану» . hioreanu.net . 24 февраля 2014 . Проверено 16 января 2016 .
- ^ "dwm - динамический оконный менеджер" . suckless.org . 9 ноября 2015 . Проверено 16 января 2016 .
- ^ «evilwm - минималистичный оконный менеджер для системы X Window» . Компьютеры Dragon 32/64 . 13 июля 2015 . Проверено 16 января 2016 .
- ^ "icewm (1)" . 13 февраля 2021 . Проверено 16 февраля 2021 года .
- ^ «Кармен: оконный менеджер для X» . 28 декабря 2008 . Проверено 16 января 2016 .
- ^ «lwm - облегченный оконный менеджер» . 26 февраля 2015 . Проверено 16 января 2016 .
- ^ "incise.org: tinywm" . 23 апреля 2014 . Проверено 16 января 2016 .
- ^ «Прихоть основная информация» . Tcler's Wiki . 24 ноября 2009 . Проверено 16 января 2016 .
Заметки
- α Для каждого окна или класса окна с дополнительной поддержкой «никогда не фокусироваться» - окна, которые никогда не должны получать фокус.