Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Клавиши доступа — это сочетания клавиш, которые повышают удобство использования и специальные возможности приложений Windows, предоставляя интуитивно понятный способ быстрого перемещения и взаимодействия с видимым пользовательским интерфейсом приложения при помощи клавиатуры вместо указующего устройства (например, сенсорного экрана или мыши).
Приложение Windows обеспечивает встроенную поддержку элементов управления платформы для клавиш доступа и связанных отзывов пользовательского интерфейса с помощью подсказок, называемых keytips.
Замечание
Клавиатура является незаменимой для пользователей с определенными ограниченными возможностями (см. специальные возможности клавиатуры), а также является важным инструментом для пользователей, которые предпочитают использовать его в качестве более эффективного способа взаимодействия с приложением.
Дополнительные сведения о вызове распространенных действий в приложении Windows с сочетаниями клавиш см. в разделе "Клавиши акселератора ".
Сведения о создании собственных настраиваемых сочетаний клавиш см. в разделе "События клавиатуры ".
Обзор
Ключ доступа — это сочетание клавиш Alt и одной или нескольких буквенно-цифровых клавиш, иногда называемых мнемоникой — обычно нажимаются последовательно, а не одновременно.
Подсказки — это значки, отображаемые рядом с элементами управления, поддерживающими клавиши доступа, когда пользователь нажимает клавишу Alt. Каждая подсказка ключей содержит буквенно-цифровые ключи, которые активируют связанный элемент управления.
Замечание
Сочетания клавиш автоматически поддерживаются для клавиш доступа с одним буквенно-цифровым символом. Например, одновременное нажатие клавиш ALT+F в Word открывает меню "Файл" без отображения подсказок клавиш.
Нажатие клавиши ALT инициализирует функциональность клавиш доступа и отображает все доступные сочетания клавиш в подсказках клавиш. Последующие нажатия клавиш обрабатываются системой горячих клавиш, которая отклоняет недопустимые ключи до нажатия допустимой клавиши доступа, либо клавиши ВВОД, ESC, TAB или СТРЕЛКА нажимаются, чтобы отключить горячие клавиши и возвратить управление нажатиями клавиш в приложение.
Приложения Microsoft Office обеспечивают обширную поддержку ключей доступа. На следующем рисунке показана вкладка "Главная" Word с активированными клавишами доступа (обратите внимание на поддержку как чисел, так и множественных нажатий клавиш).
Значки подсказок клавиш для клавиш доступа в Microsoft Word
Чтобы добавить ключ access в элемент управления, используйте свойство AccessKey. Значение этого свойства указывает последовательность клавиш доступа, сочетание клавиш (если это одиночная буквенно-цифровая клавиша) и подсказку клавиши.
<Button Content="Accept" AccessKey="A" Click="AcceptButtonClick" />
Когда следует использовать ключи доступа
Мы рекомендуем указывать ключи доступа везде, где это уместно в вашем пользовательском интерфейсе, и поддерживать ключи доступа во всех пользовательских элементах управления.
Клавиши доступа делают приложение более доступным для пользователей с ограниченными возможностями, включая тех, кто может нажимать только одну клавишу за раз или испытывает трудности с использованием мыши.
Хорошо разработанный пользовательский интерфейс клавиатуры является важным аспектом доступности программного обеспечения. Он позволяет пользователям с нарушениями зрения или с определенными нарушениями двигателя перемещаться по приложению и взаимодействовать с его функциями. Такие пользователи могут не работать с мышью и вместо этого полагаться на различные вспомогательные технологии, такие как средства улучшения клавиатуры, экранные клавиатуры, расширения экрана, средства чтения с экрана и служебные программы ввода голоса. Для этих пользователей решающее значение имеет всестороннее покрытие команд.
Клавиши доступа делают приложение более удобным для пользователей, которые предпочитают взаимодействовать с клавиатурой.
Опытные пользователи часто имеют сильное предпочтение использовать клавиатуру, так как команды на основе клавиатуры могут быть введены быстрее и не требуют от них удаления рук с клавиатуры. Для этих пользователей эффективность и согласованность имеют решающее значение; комплексность важна только для наиболее часто используемых команд.
Настройка области ключа доступа
Когда на экране много элементов, поддерживающих ключи доступа, рекомендуется установить их таким образом, чтобы уменьшить когнитивную нагрузку. Это сводит к минимуму количество ключей доступа на экране, что делает их легче найти и повышает эффективность и производительность.
Например, Microsoft Word предоставляет две ключевые области доступа: основную область для вкладок "Ленты" и второстепенную область для команд на выбранной вкладке.
На следующих изображениях показаны две области действия ключей доступа в Word. Первый показывает первичные access клавиши, которые позволяют пользователю выбирать вкладку и другие команды верхнего уровня, а второй — вторичные access клавиши для вкладки "Главная".
Основные клавиши доступа в Microsoft Word
ключи вторичного доступа в Microsoft Word вторичные ключи доступа в Microsoft Word
Ключи доступа можно дублировать для элементов в разных областях. В предыдущем примере "2" является ключом доступа для отмены в основной области и "Курсив" во вторичной области.
Здесь показано, как определить область действия ключа доступа.
<CommandBar x:Name="MainCommandBar" AccessKey="M" >
<AppBarButton AccessKey="G" Icon="Globe" Label="Go"/>
<AppBarButton AccessKey="S" Icon="Stop" Label="Stop"/>
<AppBarSeparator/>
<AppBarButton AccessKey="R" Icon="Refresh" Label="Refresh" IsAccessKeyScope="True">
<AppBarButton.Flyout>
<MenuFlyout>
<MenuFlyoutItem AccessKey="A" Icon="Globe" Text="Refresh A" />
<MenuFlyoutItem AccessKey="B" Icon="Globe" Text="Refresh B" />
<MenuFlyoutItem AccessKey="C" Icon="Globe" Text="Refresh C" />
<MenuFlyoutItem AccessKey="D" Icon="Globe" Text="Refresh D" />
</MenuFlyout>
</AppBarButton.Flyout>
</AppBarButton>
<AppBarButton AccessKey="B" Icon="Back" Label="Back"/>
<AppBarButton AccessKey="F" Icon="Forward" Label="Forward"/>
<AppBarSeparator/>
<AppBarToggleButton AccessKey="T" Icon="Favorite" Label="Favorite"/>
<CommandBar.SecondaryCommands>
<AppBarToggleButton Icon="Like" AccessKey="L" Label="Like"/>
<AppBarButton Icon="Setting" AccessKey="S" Label="Settings" />
</CommandBar.SecondaryCommands>
</CommandBar>
Основные ключи доступа для CommandBar
CommandBar основной области и поддерживаемые клавиши доступа
Вторичная область и поддерживаемые клавиши доступа для CommandBar
Избегайте коллизий ключей доступа
Конфликты клавиш доступа возникают, когда в одной области два или более элемента имеют повторяющиеся клавиши доступа или начинаются с одинаковых буквенно-цифровых символов.
Система разрешает повторяющиеся ключи доступа, обрабатывая ключ доступа первого элемента, добавленного в визуальное дерево, и игнорируя все остальные.
Если несколько ключей доступа начинаются с одного и того же символа (например, "A", "A1" и "AB"), система обрабатывает ключ доступа, состоящий из одного символа, и игнорирует все остальные.
Избегайте конфликтов, используя уникальные ключи доступа или задавая область команды.
Выберите ключи доступа
При выборе ключей доступа следует учитывать следующие аспекты:
- Использование одного символа для минимизации нажатий клавиш и поддержки клавиш акселератора по умолчанию (ALT+AccessKey)
- Избегайте использования более двух символов
- Избегайте конфликта ключей доступа
- Избегайте символов, которые трудно отличать от других символов, таких как буква "I" и число "1" или буква "O" и число "0"
- Используйте известные прецеденты из других популярных приложений, таких как Word ("F" для "Файл", "H" для "Главная" и т. д.)
- Используйте первый символ имени команды или символ, имеющий близкую связь с командой, который помогает в запоминании.
- Если первая буква уже назначена, используйте букву, которая максимально близка к первой букве имени команды ("N" для вставки)
- Используйте отличительную согласную из названия команды ("W" для View)
- Используйте гласную букву из названия команды.
Локализация ключей доступа
Если ваше приложение предполагается локализовать на нескольких языках, вам следует также рассмотреть локализацию ключей доступа. Например, 'H' означает 'Home' в английском языке и 'I' означает 'Inicio' в испанском языке.
Используйте расширение x:Uid в разметке, чтобы применить локализованные ресурсы, как показано ниже:
<Button Content="Home" AccessKey="H" x:Uid="HomeButton" />
Ресурсы для каждого языка добавляются в соответствующие папки String в project:
Папки строк ресурсов на английском и испанском языках
Локализованные ключи доступа указаны в файле "projects resources.resw":
Укажите свойство AccessKey, указанное в файле resources.resw
Дополнительные сведения см. в разделе "Преобразование ресурсов пользовательского интерфейса"
Позиционирование клавишных подсказок
Подсказки клавиш отображаются как плавающие значки по отношению к соответствующему элементу интерфейса, с учетом наличия других элементов интерфейса, других подсказок клавиш и края экрана.
Как правило, расположение подсказки по умолчанию достаточно и обеспечивает встроенную поддержку адаптивного пользовательского интерфейса.
Пример автоматического размещения подсказки клавиш
Тем не менее, если вам нужен больший контроль над размещением подсказок клавиш, рекомендуется следующее:
Очевидный принцип связи: пользователь может легко связать элемент управления с подсказкой ключа.
a. Подсказка клавиши должна быть близка к элементу с ключом доступа.
б. Подсказка ключей должна избегать перекрытия активных элементов, имеющих доступные клавиши.
c. Если ключевая подсказка не может быть размещена рядом с владельцем, она должна перекрывать владельца.Возможность обнаружения. Пользователь может быстро обнаружить элемент управления с помощью подсказки.
a. Подсказка кейтипа никогда не перекрывает другие подсказки.
Простой обзор: Пользователь может легко просматривать подсказки клавиш.
a. Подсказки клавиш должны быть выровнены друг с другом и с элементом пользовательского интерфейса. б. Подсказки ключей должны быть сгруппированы как можно больше.
Относительная позиция
Используйте свойство KeyTipPlacementMode, чтобы настроить расположение ключевой подсказки для каждого элемента или группы.
Режимы размещения: верхний, нижний, правый, левый, скрытый, центр и авто.
Режимы размещения подсказки
Центральная линия элемента управления используется для вычисления вертикального и горизонтального выравнивания подсказки.
В следующем примере показано, как задать размещение подсказки группы элементов управления с помощью свойства KeyTipPlacementMode контейнера StackPanel.
<StackPanel Background="{ThemeResource ApplicationPageBackgroundThemeBrush}" KeyTipPlacementMode="Top">
<Button Content="File" AccessKey="F" />
<Button Content="Home" AccessKey="H" />
<Button Content="Insert" AccessKey="N" />
</StackPanel>
Смещения
Используйте свойства KeyTipHorizontalOffset и KeyTipVerticalOffset элемента для еще более детального управления расположением подсказки.
Замечание
Смещения нельзя задать, если параметр KeyTipPlacementMode имеет значение Auto.
Свойство KeyTipHorizontalOffset указывает, как далеко перемещать подсказку влево или вправо.
Установка смещения вертикальной и горизонтальной подсказки для кнопки
<Button
Content="File"
AccessKey="F"
KeyTipPlacementMode="Bottom"
KeyTipHorizontalOffset="20"
KeyTipVerticalOffset="-8" />
Выравнивание кромок экрана {#screen-edge-alignment .ListParagraph}
Расположение подсказки автоматически настраивается на основе края экрана, чтобы убедиться, что подсказка полностью видна. При этом расстояние между точкой выравнивания элемента управления и подсказками может отличаться от значений, указанных для горизонтального и вертикального смещения.
кейтипы автоматически выравниваются относительно края экрана
Стиль клавишной подсказки
Мы рекомендуем использовать встроенную поддержку клавиатурных подсказок для тем платформы, включая режим высокой контрастности.
Если вам нужно указать собственные стили ключей, используйте такие ресурсы приложений, как KeyTipFontSize (размер шрифта), KeyTipFontFamily (семейство шрифтов), KeyTipBackground (фон), KeyTipForeground (передний план), KeyTipPadding (заполнение), KeyTipBorderBrush (цвет границы) и KeyTipBorderThemeThickness (толщина границы).
Параметры настройки подсказки
В этом примере показано, как изменить эти ресурсы приложения:
<Application.Resources>
<SolidColorBrush Color="DarkGray" x:Key="MyBackgroundColor" />
<SolidColorBrush Color="White" x:Key="MyForegroundColor" />
<SolidColorBrush Color="Black" x:Key="MyBorderColor" />
<StaticResource x:Key="KeyTipBackground" ResourceKey="MyBackgroundColor" />
<StaticResource x:Key="KeyTipForeground" ResourceKey="MyForegroundColor" />
<StaticResource x:Key="KeyTipBorderBrush" ResourceKey="MyBorderColor"/>
<FontFamily x:Key="KeyTipFontFamily">Consolas</FontFamily>
<x:Double x:Key="KeyTipContentThemeFontSize">18</x:Double>
<Thickness x:Key="KeyTipBorderThemeThickness">2</Thickness>
<Thickness x:Key="KeyTipThemePadding">4,4,4,4</Thickness>
</Application.Resources>
Клавиши доступа и Экранный диктор
Платформа XAML предоставляет свойства автоматизации, позволяющие клиентам UI Automation обнаруживать сведения об элементах пользовательского интерфейса.
Если указать свойство AccessKey в элементе управления UIElement или TextElement, можно использовать свойство AutomationProperties.AccessKey для получения этого значения. Клиенты специальных возможностей, такие как экранный диктор, считывают значение этого свойства каждый раз, когда элемент получает фокус.
Связанные статьи
Образцы
- галерея WinUI 3
Windows developer