モジュール java.desktop

パッケージ javax.accessibility

ユーザー・インタフェース・コンポーネントとそれらのコンポーネントへのアクセスを提供するユーザー補助テクノロジの間の規約を定義します。 Java Accessibility APIを完全にサポートしているJavaアプリケーションであれば、画面リーダーや画面拡大機能などのユーザー補助テクノロジと互換性を持ち、簡単に対応できます。画面リーダーのオフ・スクリーン・モデルに通常含まれている情報はすべてJava Accessibility APIで提供されるので、このAPIを完全にサポートしているJavaアプリケーションでは、画面リーダーのオフ・スクリーン・モデルは不要になります。

Java Accessibility APIパッケージは、8つのJavaプログラミング言語インタフェースと、6つのJavaプログラミング言語クラスで構成されています。 これらについて以下に説明します。

インタフェースAccessible

インタフェースAccessibleは、Java Accessibility APIのメイン・インタフェースです。 Java Accessibility APIをサポートするコンポーネントは、すべてこのインタフェースを実装する必要があります。 このインタフェースには、AccessibleContextクラスのインスタンスを返すgetAccessibleContextというメソッドがあります。 Javaアプリケーションでユーザー補助テクノロジとの互換性を得るには、少なくとも、アプリケーションのユーザー・インタフェースを構成するオブジェクトすべてにこのインタフェースを実装する必要があります。

AccessibleContextクラス

AccessibleContextは、すべてのAccessibleが返す共通の最小情報を表し、Accessibleインタフェースを実装するオブジェクトに対してgetAccessibleContextメソッドを呼び出すことで取得されます。 この情報には、オブジェクトのAccessible名、説明、役割、および状態や、オブジェクトの親および子についての情報などがあります。 また、アクセシビリティ対応プロパティの値が変更されたときにユーザー補助テクノロジが学習できるように、JavaBeansプロパティ変更のサポートも含まれています。 また、AccessibleContextには、あるコンポーネントについての、より詳細なアクセシビリティ情報を取得するためのメソッドがあります。 このコンポーネントがそれをサポートしている場合、これらのメソッドは、次の1つ以上のインタフェースを実装するオブジェクトを返します。
  • AccessibleAction - オブジェクトは1つ以上のアクションを実行できます。 このインタフェースは、実行するアクションを決定し、オブジェクトにそれらのアクションを実行するように指示するための標準メカニズムをユーザー補助テクノロジに提供します。 AccessibleContextに対してgetAccessibleActionメソッドを呼び出すと、操作可能なオブジェクトであれば、このインタフェースを実装するオブジェクトが返されます。
  • AccessibleComponent - オブジェクトはグラフィカルな表現を持ちます。 このインタフェースは、オブジェクトのグラフィカルな表現を判定および設定するための標準メカニズムをユーザー補助テクノロジに提供します。 AccessibleContextに対してgetAccessibleComponentメソッドを呼び出すと、画面に描画されるオブジェクトであれば、このインタフェースを実装するオブジェクトが返されます。
  • AccessibleSelection - オブジェクトは子の選択を許可します。 このインタフェースは、現在選択されている子を判定したり、選択されているセットを変更したりするための標準メカニズムをユーザー補助テクノロジに提供します。 AccessibleContextに対してgetAccessibleSelectionメソッドを呼び出すと、選択可能な子を持つオブジェクトであれば、このインタフェースを実装するオブジェクトが返されます。
  • AccessibleText - オブジェクトは編集可能なテキスト情報を画面に表示します。 このインタフェースは、内容、属性、および空間位置を使ってそのテキストにアクセスするための標準メカニズムをユーザー補助テクノロジに提供します。 AccessibleContextに対してgetAccessibleTextメソッドを呼び出すと、編集可能なテキストを含むオブジェクトであれば、このインタフェースを実装するオブジェクトが返されます。
  • AccessibleHypertext - オブジェクトはハイパーテキスト情報を画面に表示します。 このインタフェースは、内容、属性、および空間位置を使ってそのハイパーテキストにアクセスするための標準メカニズムをユーザー補助テクノロジに提供します。 AccessibleContextに対してgetAccessibleTextメソッドを呼び出すと、ハイパーテキストを含むオブジェクトであれば、このインタフェースを実装するオブジェクトが返されます。
  • AccessibleValue - オブジェクトは数値をサポートします。 このインタフェースは、オブジェクトの現在の値や最大値や最小値を判定および設定するための標準メカニズムをユーザー補助テクノロジに提供します。 AccessibleContextに対してgetAccessibleValueメソッドを呼び出すと、数値をサポートするオブジェクトであれば、このインタフェースを実装するオブジェクトが返されます。

AccessibleRoleクラス

このクラスは、ユーザー・インタフェースでのAccessibleオブジェクトの役割をカプセル化します。AccessibleContextに対してgetAccessibleRoleメソッドを呼び出すことで取得されます。 Accessibleオブジェクトの役割には、「チェックボックス」、「メニュー項目」、「パネル」などがあります。これらの役割は、AccessibleRole.CHECK_BOX、AccessibleRole.MENU_ITEMAccessibleRole.PANELのように、このクラスの定数で識別されます。 このクラスの定数は、一般的なオブジェクト役割の、強く型付けされた列挙を示します。 このクラスのpublicコンストラクタは意図的に省略されており、アプリケーションはこのクラスから定数の1つを使用する必要があります。 このクラスには、標準の役割が多数定義されていますが、将来このリストを拡張して、プログラマが定義した役割を追加することもできます。このとき、基底クラスを変更する必要はありません。

AccessibleStateクラス

このクラスは、Accessibleオブジェクトの個々の状態をカプセル化します。 Accessibleの状態には、「作動準備完了」、「ビジー」、「チェック」、「フォーカス」などがあります。これらの役割は、AccessibleState.ARMED、AccessibleState.BUSY、AccessibleState.CHECKEDAccessibleState.FOCUSEDのように、このクラスの定数で識別されます。 Accessibleオブジェクトの状態の総和はAccessibleStateSetと呼ばれ、AccessibleContextに対してgetAccessibleStateSetメソッドを呼び出すことで取得されます。

このクラスの定数は、一般的なオブジェクト役割の、強く型付けされた列挙を示します。 このクラスのpublicコンストラクタは意図的に省略されており、アプリケーションはこのクラスから定数の1つを使用する必要があります。 このクラスには、標準の状態が多数定義されていますが、将来このリストを拡張して、プログラマが定義した状態を追加することもできます。このとき、基底クラスを変更する必要はありません。

AccessibleStateSetクラス

このクラスは、Accessibleオブジェクトの状態のコレクションをカプセル化します。AccessibleContextに対してgetAccessibleStateSetメソッドを呼び出すことで取得されます。 オブジェクトは複数の状態を持つことがあるので(「チェックされている」と「フォーカスされている」の両方など)、これらの状態のコレクションをカプセル化するためにこのクラスが必要になります。 このクラスのメソッドを使用すると、状態セットから個々のAccessibleStateを取得できます。

AccessibleBundleクラス

このクラスは、強く型付けされた列挙を維持するために使用されます。 このクラスは、AccessibleRoleクラスおよびAccessibleStateクラスのスーパー・クラスです。 通常、プログラマはこのクラスを直接操作せず、AccessibleRoleクラスやAccessibleStateクラスを使用します。

インタフェースAccessibleAction

AccessibleActionインタフェースは、1つ以上のアクションを実行できるすべてのオブジェクトによってサポートされる必要があります。 このインタフェースは、実行するアクションを決定し、オブジェクトにそれらのアクションを実行するように指示するための標準メカニズムをユーザー補助テクノロジに提供します。 操作可能なオブジェクトはすべてこのインタフェースをサポートする必要があります。

アプリケーションは、オブジェクトのAccessibleContext (Accessibleを参照)を取得してから、AccessibleContextgetAccessibleActionメソッドを呼び出すと、オブジェクトがAccessibleActionインタフェースをサポートするかどうかを判定できます。 戻り値がnullでない場合、オブジェクトはこのインタフェースをサポートします。

「インタフェースAccessibleComponent」

AccessibleComponentインタフェースは、画面にレンダリングされるすべてのオブジェクトによってサポートされる必要があります。 このインタフェースは、オブジェクトのグラフィカルな表現を判定および設定するための標準メカニズムをユーザー補助テクノロジに提供します。

アプリケーションは、オブジェクトのAccessibleContext (Accessibleを参照)を取得してから、AccessibleContextgetAccessibleComponentメソッドを呼び出すと、オブジェクトがAccessibleComponentインタフェースをサポートするかどうかを判定できます。 戻り値がnullでない場合、オブジェクトはこのインタフェースをサポートします。

「インタフェースAccessibleSelection」

AccessibleSelectionインタフェースは、現在選択されている子を判定したり、選択されているセットを変更するための標準メカニズムをユーザー補助テクノロジに提供します。 選択することができる子を持つすべてのオブジェクトは、このAccessibleSelectionインタフェースをサポートする必要があります。

アプリケーションは、オブジェクトのAccessibleContext (Accessibleを参照)を取得してから、AccessibleContextgetAccessibleSelectionメソッドを呼び出すと、オブジェクトがAccessibleSelectionインタフェースをサポートするかどうかを判定できます。 戻り値がnullでない場合、オブジェクトはこのインタフェースをサポートします。

インタフェースAccessibleText

AccessibleTextインタフェースは、編集可能なリッチ・テキストをアクセス可能にするための規約です。 画面に表示されるすべてのテキストが編集可能なリッチ・テキストであるとは限りません(ボタン、ラベル、メニューなどに含まれている、ユーザーが操作することのないテキストなど)。 ただし、編集可能なテキストを含んでいるオブジェクトをユーザー補助テクノロジと相互運用できるようにするには、これらのオブジェクトにAccessibleTextインタフェースを実装する必要があります。

このインタフェースは、ピクセル座標間の移動や指定されたピクセル座標にあるテキストへの移動、テキスト内の指定された位置またはその前後にある文字、語、または文の取得、 テキスト内の指定された位置にある文字の属性(フォント、フォント・サイズ、スタイルなど)の取得、選択されているテキストの取得(存在する場合)、テキストの長さおよびテキスト・キャレット位置の取得をサポートします。

アプリケーションは、オブジェクトのAccessibleContext (Accessibleを参照)を取得してから、AccessibleContextgetAccessibleTextメソッドを呼び出すと、オブジェクトがAccessibleTextインタフェースをサポートするかどうかを判定できます。 戻り値がnullでない場合、オブジェクトはこのインタフェースをサポートします。

「インタフェースAccessibleHypertext」

AccessibleHypertextインタフェースは、ハイパーテキスト情報を画面に表示するすべてのオブジェクトによってサポートされる必要があります。 このインタフェースは、内容、属性、および空間位置を使ってそのテキストにアクセスするための標準メカニズムをユーザー補助テクノロジに提供します。 また、このクラスは、ハイパーリンクを操作するための標準メカニズムも提供します。 アプリケーションは、オブジェクトのAccessibleContext (Accessibleを参照)を取得してから、AccessibleContextのAccessibleContext.getAccessibleText()メソッドを呼び出すと、オブジェクトがAccessibleHypertextインタフェースをサポートするかどうかを判定できます。 戻り値がAccessibleHypertextを継承するクラスの場合は、そのオブジェクトはAccessibleHypertextをサポートしています。

「インタフェースAccessibleHyperlink」

オブジェクトがハイパーリンクの場合、そのオブジェクトはAccessibleHyperlinkインタフェースをサポートする必要があります。  AccessibleHypertextオブジェクトに対してgetLinkメソッドを呼び出すと、このインタフェースを実装するオブジェクトが返されます。

インタフェースAccessibleValue

AccessibleValueインタフェースは、数値をサポートするすべてのオブジェクト(スクロール・バーなど)によってサポートされる必要があります。 このインタフェースは、数値を判定および設定したり、最小値および最大値を取得するための標準メカニズムをユーザー補助テクノロジに提供します。

アプリケーションは、オブジェクトのAccessibleContext (Accessibleを参照)を取得してから、AccessibleContextgetAccessibleValueメソッドを呼び出すと、オブジェクトがAccessibleValueインタフェースをサポートするかどうかを判定できます。 戻り値がnullでない場合、オブジェクトはこのインタフェースをサポートします。

導入されたバージョン:
1.2
  • インタフェースのサマリー
    インタフェース 説明
    Accessible
    インタフェースAccessibleはアクセシビリティ・パッケージのメイン・インタフェースです。
    AccessibleAction
    AccessibleActionインタフェースは、1つ以上のアクションを実行できるすべてのオブジェクトによってサポートされる必要があります。
    AccessibleComponent
    AccessibleComponentインタフェースは、画面にレンダリングされるすべてのオブジェクトによってサポートされる必要があります。
    AccessibleEditableText
    AccessibleEditableTextインタフェースは、編集可能なテキスト情報を表示するすべてのクラスによって実装される必要があります。
    AccessibleExtendedComponent
    AccessibleExtendedComponentインタフェースは、画面上にレンダリングされるオブジェクトによってサポートされる必要があります。
    AccessibleExtendedTable
    クラスAccessibleExtendedTableは、データを2ディメンションの表形式で表示するユーザー・インタフェース・コンポーネントに関する拡張情報を提供します。
    AccessibleExtendedText
    AccessibleExtendedTextインタフェースには、AccessibleTextインタフェースでは提供されていない追加のメソッドが含まれています。
    AccessibleHypertext
    AccessibleHypertextクラスは、ハイパーテキスト情報を表示するすべてのクラスの基本クラスです。
    AccessibleIcon
    AccessibleIconインタフェースは、関連付けられたアイコン(ボタンなど)を持つ任意のオブジェクトによってサポートされる必要があります。
    AccessibleKeyBinding
    AccessibleKeyBindingインタフェースは、オブジェクトを選択するために使用できるキーボード・ニーモニックやキーボード・ショートカットなどのキーボード・バインディングを持つ任意のオブジェクトによってサポートされる必要があります。
    AccessibleSelection
    このAccessibleSelectionインタフェースは、現在選択されている子が何であるかを判断し、選択セットを変更するための補助的な技術のための標準的なメカニズムを提供します。
    AccessibleStreamable
    AccessibleStreamableインタフェースは、コンポーネントの背後にあるrawストリームを画面に表示するすべてのコンポーネントのAccessibleContextによってサポートされる必要があります。
    AccessibleTable
    AccessibleTableクラスは、2ディメンション表形式でデータを提示するユーザー・インタフェース・コンポーネントを記述します。
    AccessibleTableModelChange
    AccessibleTableModelChangeインタフェースは、表モデルへの変更を記述します。
    AccessibleText
    AccessibleTextインタフェースは、ディスプレイ上にテキスト情報を表示するすべてのクラスによって実装される必要があります。
    AccessibleValue
    AccessibleValueインタフェースは、数値をサポートするすべてのオブジェクト(スクロール・バーなど)によってサポートされる必要があります。
  • クラスのサマリー
    クラス 説明
    AccessibilityProvider
    補助技術のためのサービス・プロバイダ・インタフェース(SPI)。
    AccessibleAttributeSequence
    このクラスは、連続した属性セットを共有するテキスト範囲を、その属性セットとともに収集します。
    AccessibleBundle
    強く型付けされた列挙を維持するために使用する基底クラスです。
    AccessibleContext
    AccessibleContextは、すべてのアクセス可能なオブジェクトが返す最小限の情報を表します。
    AccessibleHyperlink
    ハイパーテキスト・ドキュメント内のリンクまたはリンクのセット(クライアント側イメージ・マップなど)のカプセル化
    AccessibleRelation
    クラスAccessibleRelationは、AccessibleRelationと1つ以上の他のオブジェクトを実装するオブジェクト間の関係を記述します。
    AccessibleRelationSet
    クラスAccessibleRelationSetは、コンポーネントのリレーション・セットを決定します。
    AccessibleResourceBundle 非推奨。
    Javaプラットフォームのバージョン1.3以降では、このクラスは非推奨です
    AccessibleRole
    クラスAccessibleRoleはコンポーネントのロールを決定します。
    AccessibleState
    クラスAccessibleStateは、コンポーネントの特定の状態を表します。
    AccessibleStateSet
    クラスAccessibleStateSetはコンポーネントの状態セットを決定します。
    AccessibleTextSequence
    このクラスは、テキスト範囲の主な詳細情報を収集します。