プライマリ・コンテンツに移動
Oracle® Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド
リリース5.0
E64891-02
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

E.2 ハイ・コントラスト・モードの理解

この項では、ハイ・コントラスト・モードについて説明します。Webシートおよびデータベース・アプリケーションでハイ・コントラスト用に最適化する対象としてセッションを指定できます。デフォルトでは、セッションはハイ・コントラスト・モードで実行するようにフラグ付けされていません。

E.2.1 Webシート・アプリケーションでのハイ・コントラスト・モードの有効化

Webシート・アプリケーションでハイ・コントラスト・モードを有効にするには、Webシート・ホームページの右側下にある「ハイ・コントラスト」リンクをクリックします

E.2.2 データベース・アプリケーションでのハイ・コントラスト・モードの使用

Webシート・アプリケーションおよび独自のデータベース・アプリケーションでハイ・コントラスト用に最適化する対象としてセッションを指定できます。この項では、独自のデータベース・アプリケーションのユーザーがこのモードを使用できるようにする方法とそれを拡張する方法について説明します。

E.2.2.1 ハイ・コントラスト・モードのプロビジョニング

独自のデータベース・アプリケーションのユーザーに対してハイ・コントラスト・モードをプロビジョニングするには、次の3つの方法があります。

  • ページ・テンプレート#HIGH_CONTRAST_TOGGLE#置換文字列を使用します。

    #HIGH_CONTRAST_TOGGLE#置換文字列をページ・テンプレートに追加すると、Oracle Application Expressでは、モードをオンまたはオフにする(切り替える)ためのリンクがカレント・ページに表示されます。つまり、標準モードの場合、このプロシージャによってモードをオンに切り替えるリンクが生成されます。

  • ハイ・コントラスト・モードの制御にAPIを使用します。

    このモードの制御に、APEX_UTIL 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>
    

E.2.2.2 ハイ・コントラスト・モードの拡張

「ハイ・コントラスト・モードの機能」で説明されている、このモードのデフォルトの機能に加えて、ユーザー独自のコンポーネントを制御することもできます。たとえば、ハイ・コントラスト・モードでの実行時に、ハイ・コントラストに固有のCSSファイルを条件付きで含めることができます。

ファンクションAPEX_UTIL.IS_HIGH_CONTRAST_SESSIONAPEX_UTIL.IS_HIGH_CONTRAST_SESSION_YNの詳細は、『Oracle Application Express APIリファレンス』のAPEX_UTILに関する説明を参照してください。

E.2.3 ハイ・コントラスト・モードの機能

ハイ・コントラスト・モードを有効化すると、次の動作が行われます。

  • Application Express Webシート・ランタイム。

    Webシート・アプリケーションにより、CSSベースのイメージ・リンクがテキスト・リンクで置き換えられます。これらのテキスト・リンクは、ソース・イメージが透明であり、その場所でCSS背景プロパティが使用されているイメージについてのみ作成されます。

  • カスタム・データベース・アプリケーション。

    フレームワークからネイティブには何も行われません。各開発者が、モードをプロビジョニングし、必要に応じて変更を行う必要があります。