AccessibleRole Enum

Definition

Anger värden som representerar möjliga roller för ett tillgängligt objekt.

public enum class AccessibleRole
public enum AccessibleRole
type AccessibleRole = 
Public Enum AccessibleRole
Arv
AccessibleRole

Fält

Name Värde Description
Default -1

En systembaserad roll.

None 0

Ingen roll.

TitleBar 1

En rubrik eller ett undertextfält för ett fönster.

MenuBar 2

En menyrad, vanligtvis under namnlisten i ett fönster, där användarna kan välja menyer.

ScrollBar 3

En lodrät eller vågrät rullningslist, som antingen kan vara en del av klientområdet eller användas i en kontroll.

Grip 4

En särskild muspekare som gör att en användare kan ändra användargränssnittselement, till exempel ett fönster. En användare kan till exempel klicka och dra ett storlekshandtag i det nedre högra hörnet i ett fönster för att ändra storlek på det.

Sound 5

Ett systemljud som är associerat med olika systemhändelser.

Cursor 6

En muspekare.

Caret 7

En caret, som är en blinkande linje, block eller bitmapp som markerar platsen för insättningspunkten i ett fönsters klientområde.

Alert 8

En avisering eller ett villkor som du kan meddela en användare om. Använd endast den här rollen för objekt som förkroppsligar en avisering men som inte är associerade med ett annat användargränssnittselement, till exempel en meddelanderuta, grafik, text eller ljud.

Window 9

En fönsterram som vanligtvis innehåller underordnade objekt, till exempel ett namnlist, en klient och andra objekt som vanligtvis finns i ett fönster.

Client 10

Ett fönsters användarområde.

MenuPopup 11

En meny som visar en lista med alternativ som användaren kan välja mellan för att utföra en åtgärd. Alla menytyper måste ha den här rollen, inklusive nedrullningsbara menyer som visas genom val från en menyrad och snabbmenyer som visas när du klickar på höger musknapp.

MenuItem 12

Ett menyalternativ, som är en post i en meny som en användare kan välja att utföra ett kommando, välja ett alternativ eller visa en annan meny. Funktionellt kan ett menyalternativ motsvara en knapptryckning, en alternativknapp, en kryssruta eller en meny.

ToolTip 13

Ett verktygstips, som är ett litet rektangulärt popup-fönster som visar en kort beskrivning av syftet med en knapp.

Application 14

Huvudfönstret för ett program.

Document 15

Ett dokumentfönster som alltid finns i ett programfönster. Den här rollen gäller endast för MDI-fönster (multiple-document interface) och refererar till ett objekt som innehåller MDI-namnlisten.

Pane 16

Ett separat område i en ram, ett delat dokumentfönster eller ett rektangulärt område i statusfältet som kan användas för att visa information. Användare kan navigera mellan fönster och i innehållet i det aktuella fönstret, men kan inte navigera mellan objekt i olika fönster. Därför representerar fönster en grupperingsnivå som är lägre än ramfönster eller dokument, men ovanför enskilda kontroller. Normalt navigerar användaren mellan fönster genom att trycka på TABB, F6 eller CTRL+TABB, beroende på kontexten.

Chart 17

En grafisk bild som används för att representera data.

Dialog 18

En dialogruta eller meddelanderuta.

Border 19

En fönsterkantlinje. Hela kantlinjen representeras av ett enskilt objekt i stället för separata objekt för varje sida.

Grouping 20

Objekten grupperade på ett logiskt sätt. Det kan finnas en överordnad-underordnad relation mellan grupperingsobjektet och de objekt som det innehåller.

Separator 21

Ett utrymme som delas upp visuellt i två regioner, till exempel ett avgränsarmenyobjekt eller en avgränsare som delar upp delade fönster i ett fönster.

ToolBar 22

Ett verktygsfält, som är en gruppering av kontroller som ger enkel åtkomst till funktioner som används ofta.

StatusBar 23

Ett statusfält, som vanligtvis är ett område längst ned i ett programfönster som visar information om den aktuella åtgärden, programmets tillstånd eller valda objekt. Statusfältet kan ha flera fält som visar olika typer av information, till exempel en förklaring av det valda menykommandot i statusfältet.

Table 24

En tabell som innehåller rader och kolumner med celler och, om du vill, radrubriker och kolumnrubriker.

ColumnHeader 25

En kolumnrubrik som ger en visuell etikett för en kolumn i en tabell.

RowHeader 26

En radrubrik som ger en visuell etikett för en tabellrad.

Column 27

En kolumn med celler i en tabell.

Row 28

En rad celler i en tabell.

Cell 29

En cell i en tabell.

30

En länk, som är en anslutning mellan ett källdokument och ett måldokument. Det här objektet kan se ut som text eller grafik, men det fungerar som en knapp.

HelpBalloon 31

En hjälpvisning i form av en knappbeskrivning eller hjälpballong som innehåller knappar och etiketter som användarna kan klicka på för att öppna anpassade hjälpavsnitt.

Character 32

Ett tecknat grafiskt objekt, till exempel Microsoft Office Assistant, som vanligtvis visas för att ge hjälp till användare av ett program.

List 33

En listruta som gör att användaren kan välja ett eller flera objekt.

ListItem 34

Ett objekt i en listruta eller listdelen av en kombinationsruta, listruta eller listruta.

Outline 35

En dispositions- eller trädstruktur, till exempel en trädvykontroll, som visar en hierarkisk lista och vanligtvis tillåter användaren att expandera och komprimera grenar.

OutlineItem 36

Ett objekt i en disposition eller trädstruktur.

PageTab 37

En egenskapssida som gör att en användare kan visa attributen för en sida, till exempel sidans rubrik, om det är en startsida eller om sidan har ändrats. Normalt är den enda underordnade kontrollen ett grupperat objekt som innehåller innehållet på den associerade sidan.

PropertyPage 38

En egenskapssida, som är en dialogruta som styr utseendet och beteendet för ett objekt, till exempel en fil eller resurs. En egenskapssidas utseende skiljer sig åt beroende på dess syfte.

Indicator 39

En indikator, till exempel en pekargrafik, som pekar på det aktuella objektet.

Graphic 40

En bild.

StaticText 41

Den skrivskyddade texten, till exempel i en etikett, för andra kontroller eller instruktioner i en dialogruta. Statisk text kan inte ändras eller markeras.

Text 42

Den valbara text som kan redigeras eller vara skrivskyddad.

PushButton 43

En knapptryckningskontroll, som är en liten rektangulär kontroll som en användare kan aktivera eller inaktivera. En tryckknapp, även känd som en kommandoknapp, har ett upphöjt utseende i sitt standardtillstånd och ett nedsänkt utseende när den är aktiverad.

CheckButton 44

En kryssrutekontroll, vilket är ett alternativ som kan aktiveras eller inaktiveras oberoende av andra alternativ.

RadioButton 45

En alternativknapp, även kallad en alternativknapp. Alla objekt som delar en enda överordnad som har det här attributet antas vara en del av en enda ömsesidigt uteslutande grupp. Du kan använda grupperade objekt för att dela upp alternativknappar i separata grupper vid behov.

ComboBox 46

En kombinationsruta, som är en redigeringskontroll med en associerad listruta som innehåller en uppsättning fördefinierade alternativ.

DropList 47

En listruta. Den här kontrollen visar ett objekt och låter användaren visa och välja ett annat i en lista med alternativa alternativ.

ProgressBar 48

Ett förloppsfält som anger förloppet för en lång åtgärd genom att visa färgade linjer inuti en vågrät rektangel. Längden på linjerna i förhållande till rektangelns längd motsvarar procentandelen av den slutförda åtgärden. Den här kontrollen tar inte användarindata.

Dial 49

En urringning eller ratt. Detta kan också vara ett skrivskyddat objekt, till exempel en hastighetsmätare.

HotkeyField 50

Ett fält med snabbtangenter som gör att användaren kan ange en kombination eller sekvens med tangenttryckningar som ska användas som en snabbnyckel, vilket gör det möjligt för användare att utföra en åtgärd snabbt. En kontroll med snabbtangenter visar de tangenttryckningar som användaren har angett och ser till att användaren väljer en giltig nyckelkombination.

Slider 51

En kontroll, som ibland kallas för ett spårfält, som gör det möjligt för en användare att justera en inställning i angivna steg mellan lägsta och högsta värden genom att flytta ett skjutreglage. Volymkontrollerna i Windows operativsystem är skjutreglagekontroller.

SpinButton 52

En rotationsruta, även kallad en upp-och-ned-kontroll, som innehåller ett par pilknappar. En användare klickar på pilknapparna med en mus för att öka eller minska ett värde. En rotationsknappskontroll används oftast med en tillhörande kontroll, som kallas ett kompisfönster, där det aktuella värdet visas.

Diagram 53

En grafisk bild som används för att diagramdata.

Animation 54

En animeringskontroll som innehåller innehåll som ändras över tid, till exempel en kontroll som visar en serie bitmappsramar, till exempel en filmremsa. Animeringskontroller visas vanligtvis när filer kopieras eller när någon annan tidskrävande uppgift utförs.

Equation 55

En matematisk ekvation.

ButtonDropDown 56

En knapp som släpper ned en lista med objekt.

ButtonMenu 57

En knapp som släpper en meny.

ButtonDropDownGrid 58

En knapp som faller ned i ett rutnät.

WhiteSpace 59

Ett tomt utrymme mellan andra objekt.

PageTabList 60

En container med sidflikskontroller.

Clock 61

En kontroll som visar tiden.

SplitButton 62

En knapp i verktygsfältet som har en listruteikon direkt intill knappen.

IpAddress 63

En kontroll som är utformad för att ange IP-adresser (Internet Protocol).

OutlineButton 64

En kontroll som navigerar som ett dispositionsobjekt.

Exempel

I följande kodexempel visas hur du skapar en tillgänglighetsmedveten diagramkontroll med hjälp AccessibleObject av klasserna och Control.ControlAccessibleObject för att exponera tillgänglig information. Kontrollen ritar två kurvor tillsammans med en förklaring. Klassen ChartControlAccessibleObject , som härleds från ControlAccessibleObject, används i CreateAccessibilityInstance metoden för att tillhandahålla anpassad tillgänglig information för diagramkontrollen. Eftersom diagramförklaringen inte är en faktisk Control -based kontroll, utan i stället ritas av diagramkontrollen, finns det ingen inbyggd tillgänglig information. ChartControlAccessibleObject Därför åsidosätter GetChild klassen metoden för att returnera den CurveLegendAccessibleObject som representerar tillgänglig information för varje del av förklaringen. När ett tillgängligt program använder den här kontrollen kan kontrollen tillhandahålla nödvändig tillgänglig information.

Det här exemplet visar hur du använder AccessibleRole uppräkningen med Role egenskapen . Se klassöversikten AccessibleObject för det fullständiga kodexemplet.

// Inner class ChartControlAccessibleObject represents accessible information associated with the ChartControl.
// The ChartControlAccessibleObject is returned in the ChartControl::CreateAccessibilityInstance .
ref class ChartControlAccessibleObject: public ControlAccessibleObject
{
private:
   ChartControl^ chartControl;

public:
   ChartControlAccessibleObject( ChartControl^ ctrl )
      : ControlAccessibleObject( ctrl )
   {
      chartControl = ctrl;
   }


   property System::Windows::Forms::AccessibleRole Role 
   {

      // Gets the role for the Chart. This is used by accessibility programs.
      virtual System::Windows::Forms::AccessibleRole get() override
      {
         return ::AccessibleRole::Chart;
      }

   }

   property AccessibleStates State 
   {

      // Gets the state for the Chart. This is used by accessibility programs.
      virtual AccessibleStates get() override
      {
         return AccessibleStates::ReadOnly;
      }

   }

   // The CurveLegend objects are "child" controls in terms of accessibility so
   // return the number of ChartLengend objects.
   virtual int GetChildCount() override
   {
      return chartControl->Legends->Length;
   }


   // Gets the Accessibility object of the child CurveLegend idetified by index.
   virtual AccessibleObject^ GetChild( int index ) override
   {
      if ( index >= 0 && index < chartControl->Legends->Length )
      {
         return chartControl->Legends[ index ]->AccessibilityObject;
      }

      return nullptr;
   }


internal:

   // Helper function that is used by the CurveLegend's accessibility object
   // to navigate between sibiling controls. Specifically, this function is used in
   // the CurveLegend::CurveLegendAccessibleObject.Navigate function.
   AccessibleObject^ NavigateFromChild( CurveLegend::CurveLegendAccessibleObject^ child, AccessibleNavigation navdir )
   {
      switch ( navdir )
      {
         case AccessibleNavigation::Down:
         case AccessibleNavigation::Next:
            return GetChild( child->ID + 1 );

         case AccessibleNavigation::Up:
         case AccessibleNavigation::Previous:
            return GetChild( child->ID - 1 );
      }
      return nullptr;
   }


   // Helper function that is used by the CurveLegend's accessibility object
   // to select a specific CurveLegend control. Specifically, this function is used
   // in the CurveLegend::CurveLegendAccessibleObject.Select function.
   void SelectChild( CurveLegend::CurveLegendAccessibleObject^ child, AccessibleSelection selection )
   {
      int childID = child->ID;
      
      // Determine which selection action should occur, based on the
      // AccessibleSelection value.
      if ( (selection & AccessibleSelection::TakeSelection) != (AccessibleSelection)0 )
      {
         for ( int i = 0; i < chartControl->Legends->Length; i++ )
         {
            if ( i == childID )
            {
               chartControl->Legends[ i ]->Selected = true;
            }
            else
            {
               chartControl->Legends[ i ]->Selected = false;
            }

         }
         
         // AccessibleSelection->AddSelection means that the CurveLegend will be selected.
         if ( (selection & AccessibleSelection::AddSelection) != (AccessibleSelection)0 )
         {
            chartControl->Legends[ childID ]->Selected = true;
         }
         
         // AccessibleSelection->AddSelection means that the CurveLegend will be unselected.
         if ( (selection & AccessibleSelection::RemoveSelection) != (AccessibleSelection)0 )
         {
            chartControl->Legends[ childID ]->Selected = false;
         }
      }
   }

};

// class ChartControlAccessibleObject
// Inner class ChartControlAccessibleObject represents accessible information associated with the ChartControl.
// The ChartControlAccessibleObject is returned in the ChartControl.CreateAccessibilityInstance override.
public class ChartControlAccessibleObject : ControlAccessibleObject
{
    ChartControl chartControl;

    public ChartControlAccessibleObject(ChartControl ctrl) : base(ctrl) 
    {
        chartControl = ctrl;
    }

    // Gets the role for the Chart. This is used by accessibility programs.
    public override AccessibleRole Role
    {  
        get {
            return AccessibleRole.Chart;
        }
    }

    // Gets the state for the Chart. This is used by accessibility programs.
    public override AccessibleStates State
    {  
        get {                    
            return AccessibleStates.ReadOnly;
        }
    }

    // The CurveLegend objects are "child" controls in terms of accessibility so 
    // return the number of ChartLengend objects.
    public override int GetChildCount()
    {  
        return chartControl.Legends.Length;
    }

    // Gets the Accessibility object of the child CurveLegend idetified by index.
    public override AccessibleObject GetChild(int index)
    {  
        if (index >= 0 && index < chartControl.Legends.Length) {
            return chartControl.Legends[index].AccessibilityObject;
        }                
        return null;
    }

    // Helper function that is used by the CurveLegend's accessibility object
    // to navigate between sibiling controls. Specifically, this function is used in
    // the CurveLegend.CurveLegendAccessibleObject.Navigate function.
    internal AccessibleObject NavigateFromChild(CurveLegend.CurveLegendAccessibleObject child, 
                                                AccessibleNavigation navdir) 
    {  
        switch(navdir) {
            case AccessibleNavigation.Down:
            case AccessibleNavigation.Next:
                return GetChild(child.ID + 1);
                
            case AccessibleNavigation.Up:
            case AccessibleNavigation.Previous:
                return GetChild(child.ID - 1);                        
        }
        return null;
    }

    // Helper function that is used by the CurveLegend's accessibility object
    // to select a specific CurveLegend control. Specifically, this function is used
    // in the CurveLegend.CurveLegendAccessibleObject.Select function.
    internal void SelectChild(CurveLegend.CurveLegendAccessibleObject child, AccessibleSelection selection) 
    {   
        int childID = child.ID;

        // Determine which selection action should occur, based on the
        // AccessibleSelection value.
        if ((selection & AccessibleSelection.TakeSelection) != 0) {
            for(int i = 0; i < chartControl.Legends.Length; i++) {
                if (i == childID) {
                    chartControl.Legends[i].Selected = true;                        
                } else {
                    chartControl.Legends[i].Selected = false;
                }
            }

            // AccessibleSelection.AddSelection means that the CurveLegend will be selected.
            if ((selection & AccessibleSelection.AddSelection) != 0) {
                chartControl.Legends[childID].Selected = true;                        
            }

            // AccessibleSelection.AddSelection means that the CurveLegend will be unselected.
            if ((selection & AccessibleSelection.RemoveSelection) != 0) {
                chartControl.Legends[childID].Selected = false;                        
            }
        }            
    }
}
' Inner Class ChartControlAccessibleObject represents accessible information 
' associated with the ChartControl.
' The ChartControlAccessibleObject is returned in the         ' ChartControl.CreateAccessibilityInstance override.
Public Class ChartControlAccessibleObject
    Inherits Control.ControlAccessibleObject

    Private chartControl As ChartControl
    
    Public Sub New(ctrl As ChartControl)
        MyBase.New(ctrl)
        chartControl = ctrl
    End Sub
    
    ' Get the role for the Chart. This is used by accessibility programs.            
    Public Overrides ReadOnly Property Role() As AccessibleRole
        Get
            Return System.Windows.Forms.AccessibleRole.Chart
        End Get
    End Property
    
    ' Get the state for the Chart. This is used by accessibility programs.            
    Public Overrides ReadOnly Property State() As AccessibleStates
        Get
            Return AccessibleStates.ReadOnly
        End Get
    End Property                        
    
    ' The CurveLegend objects are "child" controls in terms of accessibility so 
    ' return the number of ChartLengend objects.            
    Public Overrides Function GetChildCount() As Integer
        Return chartControl.Legends.Length
    End Function 
    
    ' Get the Accessibility object of the child CurveLegend idetified by index.
    Public Overrides Function GetChild(index As Integer) As AccessibleObject
        If index >= 0 And index < chartControl.Legends.Length Then
            Return chartControl.Legends(index).AccessibilityObject
        End If
        Return Nothing
    End Function 
    
    ' Helper function that is used by the CurveLegend's accessibility object
    ' to navigate between sibiling controls. Specifically, this function is used in
    ' the CurveLegend.CurveLegendAccessibleObject.Navigate function.
    Friend Function NavigateFromChild(child As CurveLegend.CurveLegendAccessibleObject, _
                                    navdir As AccessibleNavigation) As AccessibleObject
        Select Case navdir
            Case AccessibleNavigation.Down, AccessibleNavigation.Next
                    Return GetChild(child.ID + 1)
            
            Case AccessibleNavigation.Up, AccessibleNavigation.Previous
                    Return GetChild(child.ID - 1)
        End Select
        Return Nothing
    End Function            

    ' Helper function that is used by the CurveLegend's accessibility object
    ' to select a specific CurveLegend control. Specifically, this function is used 
    ' in the CurveLegend.CurveLegendAccessibleObject.Select function.            
    Friend Sub SelectChild(child As CurveLegend.CurveLegendAccessibleObject, selection As AccessibleSelection)
        Dim childID As Integer = child.ID
        
        ' Determine which selection action should occur, based on the
        ' AccessibleSelection value.
        If (selection And AccessibleSelection.TakeSelection) <> 0 Then
            Dim i As Integer
            For i = 0 To chartControl.Legends.Length - 1
                If i = childID Then
                    chartControl.Legends(i).Selected = True
                Else
                    chartControl.Legends(i).Selected = False
                End If
            Next i
            
            ' AccessibleSelection.AddSelection means that the CurveLegend will be selected.
            If (selection And AccessibleSelection.AddSelection) <> 0 Then
                chartControl.Legends(childID).Selected = True
            End If

            ' AccessibleSelection.AddSelection means that the CurveLegend will be unselected.                    
            If (selection And AccessibleSelection.RemoveSelection) <> 0 Then
                chartControl.Legends(childID).Selected = False
            End If
        End If
    End Sub
End Class

Kommentarer

Objektets roll beskriver objektets funktion och används av hjälpmedelsprogram.

Den här uppräkningen används av AccessibleObject och Control.AccessibleRole

Om du vill ha mer information om hjälpmedelsprogrammet söker du efter "Microsoft Active Accessibility" i Microsoft Developer Network-biblioteket (MSDN).

Gäller för

Se även