AccessibleStates Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt Werte an, die mögliche Zustände für ein barrierefreies Objekt darstellen.
Diese Enumeration unterstützt eine bitweise Kombination ihrer Memberwerte.
public enum class AccessibleStates
[System.Flags]
public enum AccessibleStates
[<System.Flags>]
type AccessibleStates =
Public Enum AccessibleStates
- Vererbung
- Attribute
Felder
AlertHigh | 268435456 | Die wichtigen Informationen, die unverzüglich an den Benutzer zu übermitteln sind. Ein Indikator für den Ladezustand eines Akkus würde z. B. beim Erreichen eines zu niedrigen Niveaus in diesen Zustand übergehen. In diesem Fall gibt ein Dienstprogramm für Blindzugriff diese Informationen sofort dem Benutzer bekannt, und ein Bildschirmvergrößerungsprogramm führt einen Bildlauf auf dem Bildschirm durch, um den Indikator für den Ladezustand des Akkus anzuzeigen. Dieser Zustand ist auch für jede Eingabeaufforderung oder Operation geeignet, die abgeschlossen sein muss, bevor der Benutzer fortfahren kann. |
AlertLow | 67108864 | Die Informationen niedriger Priorität, die für den Benutzer nicht unbedingt wichtig sind. |
AlertMedium | 134217728 | Die wichtigen Informationen, die nicht unverzüglich an den Benutzer übermittelt werden müssen. Wenn z. B. ein Indikator für den Ladezustand eines Akkus gerade ein niedriges Niveau erreicht, könnte dieser eine Warnung mittlerer Dringlichkeit generieren. Dienstprogramme für Blindzugriff könnten anschließend einen Sound generieren, um den Benutzer zu benachrichtigen, dass wichtige Informationen vorliegen, ohne ihn bei der Arbeit wirklich zu unterbrechen. Der Benutzer kann dann die Warnungsinformationen jederzeit abfragen. |
Animated | 16384 | Das Objekt, dessen Darstellung sich schnell oder ständig ändert. Grafiken, die nicht immer, sondern nur gelegentlich animiert sind, sollten als Graphic |
Busy | 2048 | Ein Steuerelement, das in seinem aktuellen Zustand keine Eingaben annehmen kann. |
Checked | 16 | Ein Objekt mit einem aktivierten Kontrollkästchen. |
Collapsed | 1024 | Die ausgeblendeten untergeordneten Elemente des Objekts, die Elemente in einer Gliederung oder Struktur sind. |
Default | 256 | Die Standardschaltfläche oder das Standardmenüelement. |
Expanded | 512 | Die angezeigten untergeordneten Elemente des Objekts, die Elemente in einer Gliederung oder Struktur sind. |
ExtSelectable | 33554432 | Die in der Weise geänderte Auswahl, dass alle Objekte zwischen dem Auswahlanker (das Objekt mit dem Tastaturfokus) und diesem Objekt den Auswahlzustand des Ankerobjekts annehmen. Wenn das Ankerobjekt nicht ausgewählt ist, werden die Objekte aus der Auswahl entfernt. Wenn das Ankerobjekt ausgewählt ist, wird die Auswahl auf dieses Objekt und alle dazwischen liegenden Objekte erweitert. Zusammen mit AddSelection oder RemoveSelection können Sie den Auswahlzustand festlegen. Dieser Zustand ändert den Fokus oder Auswahlanker erst, wenn er mit TakeFocus kombiniert wird. |
Floating | 4096 | Das Objekt, das nicht an der Begrenzung des übergeordneten Objekts befestigt ist, und nicht automatisch zusammen mit diesem verschoben wird. |
Focusable | 1048576 | Das Objekt im aktiven Fenster, das den Tastaturfokus erhalten kann. |
Focused | 4 | Ein Objekt mit dem Tastaturfokus. |
HasPopup | 1073741824 | Beim Aufrufen des Objekts wird ein Popupmenü oder ein Fenster angezeigt. |
HotTracked | 128 | Das mit der Maus vorselektierte Objekt, d. h., es wird hervorgehoben dargestellt, um anzuzeigen, dass sich der Mauszeiger darüber befindet. |
Indeterminate | 32 | Ein Kontrollkästchen mit drei Zuständen oder eine Symbolleisten-Schaltfläche mit unbestimmtem Zustand. Das Kontrollkästchen ist weder aktiviert noch deaktiviert, sondern es weist den dritten bzw. gemischten Zustand auf. |
Invisible | 32768 | Ein Objekt ohne sichtbare Benutzeroberfläche. |
Linked | 4194304 | Ein verknüpftes Objekt, das nicht zuvor ausgewählt wurde. |
Marqueed | 8192 | Ein Objekt mit Text oder Grafiken, die verschoben werden oder für die ein Bildlauf durchgeführt wird. |
Mixed | 32 | Ein Kontrollkästchen mit drei Zuständen oder eine Symbolleisten-Schaltfläche mit unbestimmtem Zustand. Das Kontrollkästchen ist weder aktiviert noch deaktiviert, sondern es weist den dritten bzw. gemischten Zustand auf. |
Moveable | 262144 | Ein Objekt, das verschoben werden kann. |
MultiSelectable | 16777216 | Ein Objekt, das mehrere ausgewählte Elemente akzeptiert. |
None | 0 | Kein Zustand. |
Offscreen | 65536 | Keine Bildschirmdarstellung. Diesen Zustand kann ein Sound- oder Warnungsobjekt oder ein ausgeblendetes Fenster aufweisen, das nie angezeigt wird. |
Pressed | 8 | Ein Objekt, auf das geklickt wurde. |
Protected | 536870912 | Ein Bearbeitungssteuerelement mit Kennwortschutz. |
ReadOnly | 64 | Ein schreibgeschütztes Objekt. |
Selectable | 2097152 | Ein Objekt, das eine Auswahl akzeptieren kann. |
Selected | 2 | Ein ausgewähltes Objekt. |
SelfVoicing | 524288 | Das Objekt oder untergeordnete Element kann sich mithilfe von TTS (Text to Speech) selbst beschreiben. Wenn ein Objekt mit diesem Zustand den Fokus besitzt, sollte eine sprachbasierte Barrierefreiheitshilfe keine Informationen übermitteln, da das Objekt automatisch Informationen über sich selbst übermittelt. |
Sizeable | 131072 | Ein Objekt, dessen Größe verändert werden kann. |
Traversed | 8388608 | Ein verknüpftes Objekt, das bereits zuvor ausgewählt wurde. |
Unavailable | 1 | Ein nicht verfügbares Objekt. |
Valid | 1073741823 | Ein gültiges Objekt. Diese Eigenschaft ist in .NET Framework 2.0 veraltet. |
Beispiele
Im folgenden Codebeispiel wird die Erstellung eines Barrierefreiheits-Diagrammsteuerelements mithilfe der AccessibleObject klassen Control.ControlAccessibleObject veranschaulicht, um barrierefreie Informationen verfügbar zu machen. Das Steuerelement zeichnet zwei Kurven zusammen mit einer Legende. Die ChartControlAccessibleObject
Klasse, von ControlAccessibleObject
der abgeleitet wird, wird in der CreateAccessibilityInstance Methode verwendet, um benutzerdefinierte barrierefreie Informationen für das Diagrammsteuerelement bereitzustellen. Da die Diagrammlegende kein tatsächliches Steuerelement basierend Controlist, sondern vom Diagrammsteuerelement gezeichnet wird, enthält sie keine integrierten barrierefreien Informationen. Aus diesem Grund überschreibt die ChartControlAccessibleObject
Klasse die Methode, um die GetChild CurveLegendAccessibleObject
barrierefreien Informationen für jeden Teil der Legende zurückzugeben. Wenn eine barrierefreie Anwendung dieses Steuerelements verwendet, kann das Steuerelement die erforderlichen barrierefreien Informationen bereitstellen.
Dieser Codeauszug veranschaulicht die Verwendung der Enumeration mit der AccessibleStates State Eigenschaft. Weitere Informationen finden Sie in der AccessibleObject Klassenübersicht für das vollständige Codebeispiel.
// 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
Hinweise
Ein barrierefreies Objekt kann einem oder mehreren dieser Zustände zugeordnet werden.