Dela via


Tangentbordsgenvägar

Access nycklar är kortkommandon som förbättrar användbarheten och tillgängligheten för dina Windows-program genom att tillhandahålla ett intuitivt sätt för användare att snabbt navigera och interagera med en apps synliga användargränssnitt via ett tangentbord i stället för en pekare (till exempel touch eller mus).

Windows applikationen ger inbyggt stöd för plattformskomponenter för både tangentbordsbaserade åtkomsttangenter och tillhörande användargränssnittsåterkoppling via visuella indikatorer som kallas tangenttips.

Anmärkning

Ett tangentbord är oumbärligt för användare med vissa funktionshinder (se Tangentbordstillgänglighet) och är också ett viktigt verktyg för användare som föredrar det som ett effektivare sätt att interagera med en app.

Mer information om hur du anropar vanliga åtgärder i ett Windows-program med kortkommandon finns i avsnittet Accelerator-nycklar .

Information om hur du skapar egna anpassade kortkommandon finns i avsnittet Tangentbordshändelser .

Översikt

En access nyckel är en kombination av Alt-tangenten och en eller flera alfanumeriska nycklar – som ibland kallas mnemonic – som vanligtvis trycks sekventiellt i stället för samtidigt.

Kortkommandomärken är märken som visas bredvid kontroller som stöder åtkomsttangenter när användaren trycker på Alt-tangenten. Varje tangenttips innehåller de alfanumeriska tangenter som aktiverar den associerade kontrollen.

Anmärkning

Kortkommandon stöds automatiskt för accessnycklar med ett enda alfanumeriskt tecken. Om du till exempel samtidigt trycker på Alt+F i Word öppnas menyn Arkiv utan att visa knappbeskrivningar.

Genom att trycka på Alt-tangenten initieras åtkomsttangentfunktionalitet och alla tillgängliga tangentkombinationer visas i tangenttips. Efterföljande tangenttryckningar hanteras av det access nyckelramverket, som avvisar ogiltiga nycklar tills antingen en giltig access tangent trycks ned eller tangenterna Retur, Esc, Tabb eller Pil trycks ned för att inaktivera access nycklar och returnera knapptryckningshantering till appen.

Microsoft Office-appar ger omfattande stöd för access nycklar. Följande bild visar fliken Start i Word med åtkomsttangenter aktiverade (observera stödet för både siffror och flera tryck på tangenter).

Tangenttips för åtkomsttangenter i Microsoft Word

KeyTips-indikatorer för åtkomsttangenter i Microsoft Word

Om du vill lägga till en access nyckel i en kontroll använder du egenskapen AccessKey. Värdet för den här egenskapen anger åtkomstnyckelsekvensen, kortkommandot (om det är en enda alfanumerisk tecken) och tangenttips.

<Button Content="Accept" AccessKey="A" Click="AcceptButtonClick" />

När du ska använda access nycklar

Vi rekommenderar att du anger åtkomstnycklar vad lämpligt i UI:t och stödjer åtkomstnycklar i alla anpassade kontroller.

  1. Access nycklar gör appen mer tillgänglig för användare med motoriska funktionshinder, inklusive de användare som bara kan trycka på en tangent i taget eller har problem med att använda en mus.

    Ett väldesignad tangentbordsgränssnitt är en viktig aspekt av programvarans tillgänglighet. Det gör det möjligt för användare med nedsatt syn eller som har vissa motoriska funktionshinder att navigera i en app och interagera med dess funktioner. Sådana användare kanske inte kan använda en mus och förlitar sig i stället på olika hjälpmedel såsom verktyg för tangentbordsförbättring, tangentbord på skärmen, skärmförstorare, skärmläsare och verktyg för röstinmatning. För dessa användare är omfattande kommandotäckning avgörande.

  2. Access-nycklar gör din app mer användbar för expertanvändare som föredrar att använda tangentbordet.

    Erfarna användare har ofta en stark inställning för att använda tangentbordet eftersom tangentbordsbaserade kommandon kan anges snabbare och inte kräver att de tar bort händerna från tangentbordet. För dessa användare är effektivitet och konsekvens avgörande; omfattningen är enbart viktig för de kommandon som används oftast.

Ange åtkomstnyckelns omfattning

När det finns många element på skärmen som stöder åtkomsttangenter rekommenderar vi att begränsa åtkomsttangenterna för att minska kognitiv belastning. Detta minimerar antalet access nycklar på skärmen, vilket gör dem enklare att hitta och förbättrar effektiviteten och produktiviteten.

Microsoft Word innehåller till exempel två åtkomstnyckelområden: ett primärt område för flikarna i menyfliksområdet och ett sekundärt område för kommandon på de valda flikarna.

Följande bilder visar de två åtkomstnyckelområdena i Word. Den första visar de primära access nycklar som låter en användare välja en flik och andra kommandon på den översta nivån, och den andra visar de sekundära access nycklar för fliken Start.

Primära snabbtangenter i Microsoft Word Primära snabbtangenter i Microsoft Word

Sekundära åtkomstnycklar i Microsoft Word Sekundära åtkomstnycklar i Microsoft Word

Åtkomstnycklar kan dupliceras för element i olika omfång. I föregående exempel är "2" åtkomstnyckeln för Ångra i det primära omfånget och även åtkomstnyckeln för "Kursiv stil" i det sekundära omfånget.

Här visar vi hur du definierar ett åtkomstnyckelområde.

<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>

Primära åtkomstnycklar för CommandBar

CommandBars primära omfång och stödda snabbtangenter

Secondary access nycklar för CommandBar

CommandBars sekundär omfattning och stödda snabbtangenter

Undvik åtkomstnyckelkollisioner

Access nyckelkollisioner inträffar när två eller flera element i samma omfång har duplicerade access nycklar eller börjar med samma alfanumeriska tecken.

Systemet löser duplicerade access nycklar genom att bearbeta den access nyckeln för det första elementet som lades till i det visuella trädet och ignorera alla andra.

När flera access nycklar börjar med samma tecken (till exempel "A", "A1" och "AB"), bearbetar systemet det enskilda tecknet access nyckel och ignorerar alla andra.

Undvik kollisioner genom att använda unika åtkomstnycklar eller avgränsa kommandon.

Välj access nycklar

Tänk på följande när du väljer access nycklar:

  • Använd ett enda tecken för att minimera tangenttryckningar och stödja acceleratornycklar som standard (Alt+AccessKey)
  • Undvik att använda fler än två tecken
  • Undvik kollisioner med åtkomstnycklar
  • Undvik tecken som är svåra att skilja från andra tecken, till exempel bokstaven "I" och talet "1" eller bokstaven "O" och talet "0"
  • Använd välkända prejudikat från andra populära appar som Word ("F" för "File", "H" för "Home" och så vidare)
  • Använd det första tecknet i kommandonamnet eller ett tecken med en nära association till kommandot som hjälper till med att återkalla
    • Om den första bokstaven redan har tilldelats använder du en bokstav som är så nära den första bokstaven i kommandonamnet ("N" för Insert)
    • Använd en distinkt konsonant från kommandonamnet ("W" för View)
    • Använd en vokal från kommandonamnet.

Lokalisera åtkomsttangenter

Om din app ska lokaliseras på flera språk bör du även överväga att lokalisera åtkomsttangenterna. Till exempel för "H" för "Home" i en-US och "I" för "Incio" i es-ES.

Använd x:Uid-tillägget i markering för att tillämpa lokaliserade resurser enligt följande:

<Button Content="Home" AccessKey="H" x:Uid="HomeButton" />

Resurser för varje språk läggs till i motsvarande Strängmappar i project:

Resurssträngsmappar på engelska och spanska

Resurssträngsmappar på engelska och spanska

Lokaliserade access nycklar anges i filen resources.resw för dina projekt:

Ange egenskapen AccessKey som anges i filen resources.resw

Ange egenskapen AccessKey som anges i filen resources.resw

Mer information finns i Översätta användargränssnittsresurser

Keytip-positionering

Knappsatstips visas som flytande symboler i förhållande till motsvarande gränssnittselement, med hänsyn till förekomsten av andra gränssnittselement, andra knappsatstips och skärmkanten.

Standardplatsen för nyckeltips är vanligtvis tillräcklig och ger inbyggt stöd för anpassningsbart användargränssnitt.

Exempel på automatisk placering av knappetiketter

Exempel på automatisk placering av snabbtips

Men om du behöver mer kontroll över keytip-positionering rekommenderar vi följande:

  1. Uppenbar associationsprincip: Användaren kan enkelt associera kontrollelementet med nyckelbeskrivningen.

    a. Nyckelbeskrivningen ska vara nära elementet som har åtkomstnyckeln (ägaren).
    b) Nyckelbeskrivningen bör undvika att täcka över aktiverade element som har åtkomsttangenter.
    c. Om en nyckelbeskrivning inte kan placeras nära ägaren bör den överlappa ägaren. 

  2. Upptäckbarhet: Användaren kan snabbt hitta kontrollen med kortkommandot.

    a. Nyckeltipset överlappar aldrig andra nyckeltips.  

  3. Enkel genomsökning: Användaren kan enkelt skumma tangenttipsen.

    a. tangenttipsen ska vara i linje med varandra och med användargränssnittselementet. b) nyckelbeskrivningar ska grupperas så mycket som möjligt. 

Relativ position

Använd egenskapen KeyTipPlacementMode för att anpassa placeringen av keytips för varje element eller grupp.

Placeringslägena är: Top, Bottom, Right, Left, Hidden, Center och Auto.

Skärmbild som visar de relativa positionerna för keytipens placeringslägen

placeringslägen för keytip

Kontrollens mittlinje används för att beräkna den lodräta och vågräta justeringen av tangentbeskrivningen.

Följande exempel visar hur du anger nyckeltipsplacering för en grupp kontroller med egenskapen KeyTipPlacementMode för en StackPanel-container.

<StackPanel Background="{ThemeResource ApplicationPageBackgroundThemeBrush}" KeyTipPlacementMode="Top">
  <Button Content="File" AccessKey="F" />
  <Button Content="Home" AccessKey="H" />
  <Button Content="Insert" AccessKey="N" />
</StackPanel>

Förskjutningar

Använd egenskaperna KeyTipHorizontalOffset och KeyTipVerticalOffset för ett element för ännu mer detaljerad kontroll av keytip-platsen.

Anmärkning

Det går inte att ange förskjutningar när KeyTipPlacementMode är inställt på Auto.

Egenskapen KeyTipHorizontalOffset anger hur långt keytip ska flyttas åt vänster eller höger.

Skärmbild av lodrät och vågrät tangenttipsförskjutning för en knapp

Ange lodräta och vågräta keytip-förskjutningar för en knapp

<Button
  Content="File"
  AccessKey="F"
  KeyTipPlacementMode="Bottom"
  KeyTipHorizontalOffset="20"
  KeyTipVerticalOffset="-8" />

Justering av skärmkant {#screen-edge-justering . ListParagraph}

Placeringen för en tangenttips justeras automatiskt baserat på skärmkanten för att säkerställa att tangenttipsen är helt synlig. När detta inträffar kan avståndet mellan kontroll- och keytip-justeringspunkten skilja sig från de värden som anges för de vågräta och lodräta förskjutningarna .

Skärmbild av kantjustering för keytip-skärmen

tangenttips placeras automatiskt baserat på skärmens kant

Nyckelgenvägsstil

Vi rekommenderar att du använder det inbyggda nyckeltipsstödet för plattformsteman, inklusive hög kontrast.

Om du behöver ange egna nyckelbeskrivningsformat använder du programresurser som KeyTipFontSize (teckenstorlek), KeyTipFontFamily (teckensnittsfamilj), KeyTipBackground (bakgrund), KeyTipForeground (förgrund), KeyTipPadding (utfyllnad), KeyTipBorderBrush(Kantlinjefärg) och KeyTipBorderThemeThickness (kanttjocklek).

Skärmbild av anpassningsalternativ för keytippar, inklusive teckensnitt, ordningsföljd och färg

anpassningsalternativ för keytip

Det här exemplet visar hur du ändrar dessa programresurser:

<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>

Åtkomsttangenter och skärmläsaren

XAML-ramverket exponerar Automation-egenskaper som gör det möjligt för UI Automation klienter att identifiera information om element i användargränssnittet.

Om du anger egenskapen AccessKey i en UIElement- eller TextElement-kontroll kan du använda egenskapen AutomationProperties.AccessKey för att hämta det här värdet. Hjälpmedelsklienter, till exempel Skärmläsaren, läser värdet för den här egenskapen varje gång ett element får fokus.

Exempel