言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
Flash Player の AccessibilityImplementation クラスのサブクラスです。
MX または Spark コンポーネントが作成されると、そのコンポーネントの accessibilityImplementation
プロパティがこのクラスのサブクラスのインスタンスに設定されます。その後、Flash Player でこのオブジェクトを使用することにより、スクリーンリーダーなどの MSAA クライアントでコンポーネントの表示と操作が可能になります。アクセシビリティ実装クラスおよび MSAA について詳しくは、flash.accessibility.AccessibilityImplementation クラスを参照してください。
子
Flash Player は、アクセス可能なオブジェクトの厳密な階層をサポートしていません。DisplayObject に accessibilityImplementation
オブジェクトがある場合、その子の accessibilityImplementation
オブジェクトは無視されます。ただし、Player では、コンポーネントのアクセシビリティ実装クラスで、その内部パーツの MSAA 情報を公開できます。例えば、List はその内部アイテムに関する MSAA 情報を公開します。
子(内部パーツ)の数と、識別に使用される子 ID は、getChildIDArray()
メソッドにより判定されます。Player の AccessibilityImplementation 基本クラスでは、このメソッドを使用すると、単に null
が返されます。Flex の AccImpl クラスは、このメソッドをオーバーライドして空の配列を返します。また、createChildIDArray()
という保護されたユーティリティメソッドもあり、内部パーツを持つサブクラスのオーバーライドで使用できます。
役割
コンポーネントとその内部パーツの MSAA Role は、get_accRole()
メソッドにより判定されます。Player の AccessibilityImplementation 基本クラスでは、サブクラスによりオーバーライドされることが予期されるため、このメソッドを使用するとランタイムエラーがスローされます。Flex の AccImpl クラスには role
という名前の保護されたプロパティがあります。通常、サブクラスは、このプロパティをそれぞれのコンストラクターで設定し、get_accRole()
をオーバーライドして、このプロパティを返します。
名前
コンポーネントとその内部パーツの MSAA Name は、get_accName()
メソッドにより判定されます。Player の AccessibilityImplementation 基本クラスでは、このメソッドを使用すると、単に null
が返されます。Flex の AccImpl クラスは、このメソッドをオーバーライドし、次のように、空の文字列から始まり、追加される各部分を単一のスペースで区切った名前を作成します。
- 単純な子(コンボボックスやリストボックスのアイテムなど)が要求されている場合は、子のデフォルト名のみが返されます。以下に示す残りの手順は、コンポーネント本体(childID 0)のみに適用されます。
- コンポーネントが Form の内部にある場合
- Form に FormHeading があり、コンポーネントが FormItem の内部にある場合は、見出しテキストが追加されます。 これを回避するには、FormHeading の
accessibilityName
をスペース(" ")に設定する必要があります。 - フィールドが必須の場合は、ロケールに応じて「必須フィールド」を意味する文字列が追加されます。
- コンポーネントが FormItem の内部にある場合は、FormItem のラベルテキストが追加されます。これを回避するには、FormItem の
accessibilityName
をスペース(" ")に設定する必要があります。
- Form に FormHeading があり、コンポーネントが FormItem の内部にある場合は、見出しテキストが追加されます。 これを回避するには、FormHeading の
- コンポーネントの名前は次のように決定されます。
- コンポーネントの
accessibilityName
(つまり、accessibilityProperties.name
)がスペースの場合、コンポーネント名は追加されません。 - コンポーネント名が指定されている場合(つまり、null でも空でもない場合)は、指定されたコンポーネント名が追加されます。
- それ以外の場合は、AccImpl で定義され各サブクラスで実装される、保護されたメソッド
getName()
が呼び出されて、デフォルト名が設定されます。例えば、ButtonAccImpl では、Button のデフォルト名がボタンに表示されるラベルであることを指定ために、getName()
が実装されます。空でない場合、getName()
の戻り値が追加されます。 -
getName()
で空の値が返された場合、コンポーネントのtoolTip
プロパティが設定されているときは、その String が追加されます。 - コンポーネントの
errorString
プロパティが設定されている場合は、その String が追加されます。
- コンポーネントの
説明
MSAA Description は、コンポーネントの accessibilityImplementation
オブジェクトではなく、accessibilityProperties
オブジェクトのみに基づいて決定されます。したがって、AccessibilityImplementation、AccImpl、および説明に関連する AccImpl のサブクラスにはロジックがありません。通常、Flex で説明を設定するには、UIComponent の accessibilityDescription
プロパティを使用して、単純に accessibilityProperties.description
を設定します。
状態
コンポーネントとその内部パーツの MSAA State は、get_accState()
メソッドにより判定されます。Player の AccessibilityImplementation 基本クラスでは、サブクラスによりオーバーライドされることが予期されるため、このメソッドを使用するとランタイムエラーがスローされます。Flex の AccImpl クラスはこのメソッドをオーバーライドしませんが、サブクラスでオーバーライドできるように、getState()
という保護されたユーティリティメソッドが用意されています。getState()
メソッドを使用すると、次の値の組み合わせによって状態が示されます。
- STATE_SYSTEM_UNAVAILABLE(このコンポーネントまたはいずれかの上位要素で enabled が false になっている場合)
- STATE_SYSTEM_FOCUSABLE
- STATE_SYSTEM_FOCUSED(コンポーネント自身にフォーカスが設定されており、コンポーネントにある可能性があるどのサブパートに対しても設定されていない場合)
値
コンポーネントとその内部パーツの MSAA Value は、get_accValue()
メソッドにより判定されます。Player の AccessibilityImplementation 基本クラスでは、このメソッドを使用すると、単に null
が返されます。Flex の AccImpl クラスはこのメソッドをオーバーライドしませんが、TextInput などのコンポーネントのサブクラスはこのメソッドをオーバーライドします。
場所
コンポーネント本体ではなく、コンポーネントの内部パーツの MSAA Location は、get_accLocation()
メソッドにより判定されます。このメソッドが childID 0 に対して呼び出されることはありません。Flash Player では、getBounds()
から返された境界矩形に基づいてコンポーネントの MSAA Location を判定します。Flex の AccImpl クラスはこのメソッドをオーバーライドしませんが、内部パーツを持つコンポーネントのサブクラスはこのメソッドをオーバーライドします。
デフォルトアクション
コンポーネントとその内部パーツの MSAA DefaultAction は、get_accDefaultAction()
により判定されます。Player の AccessibilityImplementation 基本クラスでは、このメソッドを使用すると、単に null
が返されます。Flex の AccImpl クラスはこのメソッドをオーバーライドしませんが、デフォルトアクションを持つサブクラスはこのメソッドをオーバーライドします。これらのサブクラスは、AccessibilityImplementation の accDoDefaultAction()
メソッドもオーバーライドして、それぞれのデフォルトアクションを実行します。
その他
オブジェクトの表示 / 非表示が切り替えられると、EVENT_OBJECT_SHOW および EVENT_OBJECT_HIDE と呼ばれる MSAA イベントが送信されます。Flash Player では、これらに対応する状態がサポートされ、非表示になっている MSAA コンポーネントはレンダリングされません。コンポーネントが表示されている場合は、AccImpl に関連して説明されている状態が使用されます。
プロパティ | 定義元 | ||
---|---|---|---|
eventsToHandle : Array [読み取り専用]
すべてのサブクラスは、受け取るイベントの文字列の配列を返すことにより、この関数をオーバーライドする必要があります。 | AccImpl | ||
master : UIComponent
この AccImpl インスタンスによってアクセス可能になる UIComponent インスタンスへの参照です。 | AccImpl | ||
role : uint
アクセス可能になるコンポーネントのアクセシビリティロールです。 | AccImpl |
メソッド | 定義元 | ||
---|---|---|---|
AccImpl(master:UIComponent)
コンストラクターです。 | AccImpl | ||
この AccessibilityImplementation が表すコンポーネントまたはその子要素のいずれかに関連付けられているデフォルトアクションを実行する IAccessible メソッドです。 | AccessibilityImplementation | ||
AccessibilityImplementation の子要素の境界ボックスを指定する DisplayObject または Rectangle を返すための MSAA メソッドです。 | AccessibilityImplementation | ||
この AccessibilityImplementation が表すコンポーネント内の選択を変更するための IAccessible メソッドです。 | AccessibilityImplementation | ||
この AccessibilityImplementation が表すコンポーネントまたはその子要素のいずれかのデフォルトアクションを返すための MSAA メソッドです。 | AccessibilityImplementation | ||
コンポーネント内に子フォーカスを持つ子要素がある場合に、その符号なし整数 ID を返す MSAA メソッドです。 | AccessibilityImplementation | ||
この AccessibilityImplementation が表すコンポーネントまたはその子要素のいずれかの名前を返すための MSAA メソッドです。 | AccessibilityImplementation | ||
この AccessibilityImplementation が表すコンポーネントまたはその子要素のいずれかのシステムロールを返すための MSAA メソッドです。 | AccessibilityImplementation | ||
選択されているすべての子要素の ID を含む配列を返すための MSAA メソッドです。 | AccessibilityImplementation | ||
この AccessibilityImplementation が表すコンポーネントまたはその子要素のいずれかの現在のランタイム状態を返すための IAccessible メソッドです。 | AccessibilityImplementation | ||
この AccessibilityImplementation が表すコンポーネントまたはその子要素のいずれかのランタイム値を返すための MSAA メソッドです。 | AccessibilityImplementation | ||
AccessibilityImplementation | |||
AccessibilityImplementation | |||
AccessibilityImplementation のすべての子要素の符号なし整数 ID を含む配列を返します。 | AccessibilityImplementation | ||
[静的]
フォームアクセシビリティをサポートするためのメソッドです。 | AccImpl | ||
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | ||
[静的]
コンポーネントの上位要素で enabled が false に設定されている場合は true を返します。 | AccImpl | ||
true または false を返して、x、y、width および height で指定されたバウンディングボックスを持つテキストオブジェクトを、この AccessibilityImplementation が表すコンポーネントのラベルと見なすかどうかを示します。 | AccessibilityImplementation | ||
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | ||
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | ||
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | ||
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのプリミティブな値を返します。 | Object |
メソッド | 定義元 | ||
---|---|---|---|
汎用イベントハンドラーです。 | AccImpl | ||
アクセス可能なコンポーネントの名前を返します。 | AccImpl | ||
アクセス可能なコンポーネントの状態を判別するためのユーティリティメソッドです。 | AccImpl |
eventsToHandle | プロパティ |
master | プロパティ |
protected var master:UIComponent
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
この AccImpl インスタンスによってアクセス可能になる UIComponent インスタンスへの参照です。
role | プロパティ |
protected var role:uint
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
アクセス可能になるコンポーネントのアクセシビリティロールです。
AccImpl | () | コンストラクター |
public function AccImpl(master:UIComponent)
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
コンストラクターです。
パラメーターmaster:UIComponent — この AccImpl インスタンスによってアクセス可能になる UIComponent インスタンスです。
|
eventHandler | () | メソッド |
getFormName | () | メソッド |
public static function getFormName(component:UIComponent):String
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
フォームアクセシビリティをサポートするためのメソッドです。この AccImpl クラスの get_accName() から呼び出されます。 UIComponentAccProps コンストラクターからも呼び出されます。
パラメーター
component:UIComponent |
String |
getName | () | メソッド |
getState | () | メソッド |
isAncestorDisabled | () | メソッド |
public static function isAncestorDisabled(component:UIComponent):Boolean
コンポーネントの上位要素で enabled が false に設定されている場合は true を返します。指定されたコンポーネント自身はチェックされません。
パラメーター
component:UIComponent — 無効な上位要素をチェックする UIComponent。
|
Boolean — コンポーネントに無効な上位要素がある場合は、true になります。
|
Tue Jun 12 2018, 10:34 AM Z