AccessibleRole Enum
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
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
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. |
| Link | 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).