Oracle Application Express開発環境、Webシート・ランタイムに加え、独自のデータベース・アプリケーション内でも、セッションがハイ・コントラスト用に最適化されていることを確認できます。この項では、独自のデータベース・アプリケーションのユーザーがこのモードを使用できるようにする方法とそれを拡張する方法について説明します。
内容は次のとおりです。
独自のデータベース・アプリケーションのユーザーに対してこのモードをプロビジョニングするには、次の3つの方法があります。
ページ・テンプレート#HIGH_CONTRAST_TOGGLE#置換文字列: この置換文字列をページ・テンプレートに追加すると、Oracle Application Expressでは、モードをオンまたはオフにする(切り替える)ためのリンクがカレント・ページに表示されます。つまり、標準モードの場合、このプロシージャによってモードをオンに切り替えるリンクが生成されます。
APEX_UTIL API: このモードを制御するために使用できるAPIもあります。1つの場所でのみ切替えをレンダリングし、ページ・テンプレート・レベルではこのことを行わない場合や、実際に表示されるリンク・テキストをより詳細に制御する場合に、APIを使用することがあります。詳細は、『Oracle Application Express APIリファレンス』のAPEX_UTILに関する説明を参照してください。
f?p構文のREQUEST属性: この属性を使用して、ハイ・コントラスト・モードを有効化および無効化します。f?p構文のREQUEST属性の一般的な構文は、次のとおりです。
f?p=application:page:session:request:...
リクエストがSET_SESSION_HIGH_CONTRAST_ON
またはSET_SESSION_HIGH_CONTRAST_OFF
の場合、セッションのハイ・コントラスト・モードがオンまたはオフになります。次に例を示します。
<a href="f?p=100:1:&SESSION.:SET_SESSION_HIGH_CONTRAST_ON">Set High Contrast On</a>
「ハイ・コントラスト・モードの機能」で説明されている、このモードのデフォルトの機能に加えて、ユーザー独自のコンポーネントを制御することもできます。たとえば、ハイ・コントラスト・モードでの実行時に、ハイ・コントラストに固有のCSSファイルを条件付きで含めることができます。
ファンクションAPEX_UTIL.IS_HIGH_CONTRAST_SESSION
とAPEX_UTIL.IS_HIGH_CONTRAST_SESSION_YN
の詳細は、『Oracle Application Express APIリファレンス』のAPEX_UTILに関する説明を参照してください。