Введение

Элемент пользовательского интерфейса

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

История

Контекстные меню впервые появились в среде Smalltalk на компьютере Xerox Alto, где они назывались всплывающими меню; их изобрел Дэн Ингаллс в середине 1970-х годов. Microsoft Office v3.0 представил контекстное меню для функций копирования и вставки в 1990 году. Компания Borland продемонстрировала широкое использование контекстного меню в 1991 году на Второй конференции Paradox в Фениксе, штат Аризона. Lotus 1-2-3/G для OS/2 v1.0 добавил дополнительные параметры форматирования в 1991 году. Borland Quattro Pro для Windows v1.0 представил опцию контекстного меню "Свойства" в 1992 году.

Реализация

Контекстные меню открываются с помощью различных видов взаимодействия пользователя, направленных на область графического интерфейса, поддерживающую контекстные меню. Конкретный вид взаимодействия и способ выбора области могут различаться: на компьютерах с Microsoft Windows, macOS или Unix с системой X Window System, нажатие вторичной кнопки мыши (обычно правой) открывает контекстное меню для области под указателем мыши. Для ускорения работы некоторые реализации могут дополнительно поддерживать выделение при удержании и отпускании кнопки, то есть указатель удерживается и перетаскивается, а затем отпускается над нужным пунктом меню. На системах с однокнопочной мышью контекстные меню обычно открываются нажатием и удержанием первичной кнопки мыши (это работает с иконками в Dock на macOS) или комбинацией клавиш и кнопки мыши (например, Ctrl + щелчок мыши в Classic Mac OS и macOS). В macOS альтернативным способом является включение «Клавиш мыши» в «Универсальном доступе». Затем, в зависимости от типа клавиатуры (ноутбук, компактная или полноразмерная), сочетание клавиш будет ++5 или +5 (цифровая клавиатура) или ++i (ноутбук). На системах с мультитач-интерфейсом, таких как MacBook или Surface, контекстное меню можно открыть нажатием или касанием двумя пальцами вместо одного. Некоторые камеры смартфонов, например, распознают QR-код при съемке изображения. В этом случае появляется всплывающее окно с предложением «открыть» содержимое QR-кода, которое может быть веб-сайтом или настройкой подключения телефона к Wi-Fi. См. изображение. В некоторых пользовательских интерфейсах элементы контекстного меню сопровождаются значками для более быстрого распознавания при навигации. Контекстные меню также могут содержать верхний ряд значков для быстрого доступа к наиболее часто используемым опциям. В Windows контекстное меню не открывается при нажатой кнопке мыши, а только при ее отпускании, поэтому пользователю приходится щелкать еще раз, чтобы выбрать пункт меню. Это отличается от поведения macOS и большинства графических интерфейсов свободного программного обеспечения. В Microsoft Windows контекстное меню для активной области можно открыть нажатием клавиши Application или Shift+F10. Контекстные меню иногда организованы иерархически, что позволяет перемещаться по уровням структуры меню. Реализации могут различаться: Microsoft Word был одним из первых приложений, который отображал только подпункты некоторых пунктов меню после нажатия на значок стрелки в контекстном меню, в противном случае выполняя действие, связанное с родительским пунктом. Это позволяет быстро повторить действие с параметрами предыдущего выполнения и лучше разделять параметры и действия.

Удобство использования

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

В документации

Руководство Microsoft предписывает всегда использовать термин «контекстное меню» и явно не рекомендует использовать термин «меню быстрого доступа».