AccessibleStates 列挙体
ユーザー補助オブジェクトに設定できる状態を表す値を指定します。
この列挙体には、メンバ値をビットごとに演算するための FlagsAttribute 属性が含まれています。
<Flags>
<Serializable>
Public Enum AccessibleStates
[C#]
[Flags]
[Serializable]
public enum AccessibleStates
[C++]
[Flags]
[Serializable]
__value public enum AccessibleStates
[JScript]
public
Flags
Serializable
enum AccessibleStates
解説
ユーザー補助オブジェクトは、これらの状態の 1 つ以上に関連付けることができます。
ユーザー補助アプリケーションの詳細については、MSDN (Microsoft Developer Network) ライブラリの「Microsoft Active Accessibility」を参照してください。
メンバ
メンバ名 | 説明 | 値 |
---|---|---|
AlertHigh | ユーザーに即座に伝える必要のある重要な情報。たとえば、バッテリ レベル インジケータは、最低限のレベルに達するとこの状態に移行します。この場合では、ブラインド アクセス ユーティリティが、この情報をユーザーに即座に通知します。また、画面拡大プログラムが、画面をスクロールしてバッテリ インジケータを表示します。この状態は、ユーザーが次の操作に移る前に完了する必要のある要求または操作にも該当します。 | 268435456 |
AlertLow | ユーザーにとっては重要でないと思われる、重要度の低い情報。 | 67108864 |
AlertMedium | ユーザーに即座に伝える必要のない重要情報。たとえば、バッテリ レベル インジケータは、低レベルに達すると中レベルの警告を発します。この場合では、ブラインド アクセス ユーティリティが、サウンドを鳴らすなどの方法で、ユーザーの作業を妨げずに重要な情報を通知します。ユーザーは、作業の合間に警告情報を確認できます。 | 134217728 |
Animated | 外観がすばやくまたは絶えず変化するオブジェクト。常に動くのではなく、時間をおいて動くグラフィックスは、 Graphic OR Animated として定義する必要があります。この状態は、オブジェクトの位置の変更を示すためには使用しないでください。 | 16384 |
Busy | 現在の状態では入力を受け付けられないコントロール。 | 2048 |
Checked | チェック ボックスがオンになっているオブジェクト。 | 16 |
Collapsed | アウトラインまたはツリー構造内の項目で、非表示になっている子オブジェクト。 | 1024 |
Default | 既定のボタンまたはメニュー項目。 | 256 |
Expanded | アウトラインまたはツリー構造内の項目で、表示されている子オブジェクト。 | 512 |
ExtSelectable | 選択アンカ (キーボード フォーカスを持つオブジェクト) とこのオブジェクトとの間にあるすべてのオブジェクトが、アンカ オブジェクトの選択状態に従うように変更できる選択項目。アンカ オブジェクトが選択されていない場合は、すべてのオブジェクトが選択から除外されます。アンカ オブジェクトが選択されている場合は、選択が拡張されて、このオブジェクトとその間にあるすべてのオブジェクトが選択に含まれます。選択状態を設定するには、この状態を AccessibleSelection.AddSelection または AccessibleSelection.RemoveSelection と組み合わます。 AccessibleSelection.TakeFocus と組み合わせない限り、この状態ではフォーカスや選択アンカは変更できません。 | 33554432 |
Floating | 親オブジェクトの境界に固定されず、親に合わせて自動的に移動することのないオブジェクト。 | 4096 |
Focusable | キーボード フォーカスを受け取ることができる、アクティブ ウィンドウ内のオブジェクト。 | 1048576 |
Focused | キーボード フォーカスを取得しているオブジェクト。 | 4 |
HotTracked | マウスによってホット トラッキングされるオブジェクト。つまり、マウス ポインタがそのオブジェクト上にあるときに、それを示すために外観が強調表示されるオブジェクト。 | 128 |
Indeterminate | 状態が不確定な、3 ステート チェック ボックスまたはツール バー ボタン。このチェック ボックスはオンでもオフでもなく、3 つ目の状態、つまりそれらを混合した状態になります。 | 32 |
Invisible | 表示されるユーザー インターフェイスを持たないオブジェクト。 | 32768 |
Linked | 以前に選択されたことのないリンク オブジェクト。 | 4194304 |
Marqueed | テキストまたはグラフィックスがスクロールまたは移動しているオブジェクト。 | 8192 |
Mixed | 状態が不確定な、3 ステート チェック ボックスまたはツール バー ボタン。このチェック ボックスはオンでもオフでもなく、3 つ目の状態、つまりそれらを混合した状態になります。 | 32 |
Moveable | 移動可能なオブジェクト。 | 262144 |
MultiSelectable | 項目の複数選択を受け付けるオブジェクト。 | 16777216 |
None | 状態なし。 | 0 |
Offscreen | 画面上の表示なし。サウンド オブジェクト、警告オブジェクト、または表示されることのない隠しウィンドウは、この状態になります。 | 65536 |
Pressed | 押された状態のオブジェクト。 | 8 |
Protected | パスワードで保護されているエディット コントロール。 | 536870912 |
ReadOnly | 読み取り専用オブジェクト。 | 64 |
Selectable | 選択を受け付けることのできるオブジェクト。 | 2097152 |
Selected | 選択されているオブジェクト。 | 2 |
SelfVoicing | オブジェクトまたは子が、TTS (text-to-speech) を使用して、それ自体の情報を音声通知します。この状態のオブジェクトがフォーカスを取得したときは、それ自体がオブジェクト情報を自動的に音声通知します。そのため、音声ベースのユーザー補助機能は、この情報を通知する必要がありません。 | 524288 |
Sizeable | サイズ変更が可能なオブジェクト。 | 131072 |
Traversed | 以前に選択されたことのあるリンク オブジェクト。 | 8388608 |
Unavailable | 利用できないオブジェクト。 | 1 |
Valid | 有効なオブジェクト。 | 1073741823 |
使用例
[Visual Basic, C#, C++] ユーザー補助情報を公開する AccessibleObject クラスおよび Control.ControlAccessibleObject クラスを使用して、ユーザー補助対応のチャート コントロールを作成する方法の例を次に示します。コントロールは、凡例に沿って 2 つの曲線をプロットします。 ControlAccessibleObject から派生された ChartControlAccessibleObject
クラスは、チャート コントロールの独自のユーザー補助情報を提供することを目的として、 CreateAccessibilityInstance メソッドで使用します。チャートの凡例は実際の Control ベースのコントロールではなく、チャート コントロールによって描画されるため、組み込みのユーザー補助情報は含まれていません。このため、 ChartControlAccessibleObject
クラスは、 GetChild メソッドをオーバーライドして、凡例の各部分のユーザー補助情報を表す CurveLegendAccessibleObject
を返します。ユーザー補助対応のアプリケーションでこのコントロールが使用された場合、このコントロールは必要なユーザー補助情報を提供できます。
[Visual Basic, C#, C++] State プロパティで AccessibleStates 列挙体を使用する例を次に示します。コード例全体については、 AccessibleObject クラスの概要を参照してください。
' 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 'New
' 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 'SelectChild
End Class 'ChartControlAccessibleObject
[C#]
// 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;
}
}
}
}
[C++]
// Inner class ChartControlAccessibleObject represents accessible information associated with the ChartControl.
// The ChartControlAccessibleObject is returned in the ChartControl::CreateAccessibilityInstance .
__gc class ChartControlAccessibleObject : public ControlAccessibleObject {
ChartControl* chartControl;
public:
ChartControlAccessibleObject(ChartControl* ctrl) : ControlAccessibleObject (ctrl) {
chartControl = ctrl;
}
// Gets the role for the Chart. This is used by accessibility programs.
__property System::Windows::Forms::AccessibleRole get_Role() {
return AccessibleRole::Chart;
}
// Gets the state for the Chart. This is used by accessibility programs.
__property AccessibleStates get_State() {
return AccessibleStates::ReadOnly;
}
// The CurveLegend objects are "child" controls in terms of accessibility so
// return the number of ChartLengend objects.
int GetChildCount() {
return chartControl->Legends->Length;
}
// Gets the Accessibility object of the child CurveLegend idetified by index.
AccessibleObject* GetChild(int index) {
if (index >= 0 && index < chartControl->Legends->Length) {
return chartControl->Legends[index]->AccessibilityObject;
}
return 0;
}
// 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.
public private:
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 0;
}
// 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) != 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;
}
}
}
}; // class ChartControlAccessibleObject
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
名前空間: System.Windows.Forms
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
アセンブリ: System.Windows.Forms (System.Windows.Forms.dll 内)
参照
System.Windows.Forms 名前空間 | AccessibleEvents | AccessibleObject | AccessibleNavigation | AccessibleRole | AccessibleSelection