フォント、アイコンおよびイメージの配置

Registry.datのフォント、アイコンおよびイメージについて、デフォルトの場所および検索パスを指定できます。カスタム・カラー・スキームの設定とグラデーション・キャンバスの色の設定もRegistry.datに設定されています。

この節の内容は以下のとおりです。

Fusion Middleware Controlを使用したRegistry.datの管理

Registry.dat.のパラメータを変更、追加または削除するには、Fusion Middleware Controlを使用します。

「フォントとアイコンのマッピング」ページにアクセスするには:

  1. Fusion Middleware Controlを起動します。

  2. 「Forms」メニュー・リストから「フォントとアイコンのマッピング」を選択します。「フォントとアイコンのマッピング」ページが表示されます。

    図-13 「フォントとアイコンのマッピング」ページ

    図-13の説明が続きます
    「図-13 「フォントとアイコンのマッピング」ページ」の説明

Registry.datパラメータの値を編集するには:

  1. Fusion Middleware Controlを起動します。

  2. 「Forms」メニュー・リストから「フォントとアイコンのマッピング」を選択します。

  3. 「値」テキスト・フィールドで、値を変更するパラメータを含む行を選択します。

  4. 「適用」をクリックして変更を保存します。

Registry.datパラメータとその値を追加するには:

  1. 「Forms」メニュー・リストから「フォントとアイコンのマッピング」を選択します。

  2. 「追加」をクリックします。

    「追加」ダイアログが表示されます。

  3. このパラメータの名前、値およびコメントを入力します。

  4. 「作成」をクリックします。

  5. 変更を保存する場合は「適用」をクリックし、破棄する場合は「元に戻す」をクリックします。

Registry.datパラメータとその値を削除するには:

  1. 「Forms」メニュー・リストから「フォントとアイコンのマッピング」を選択します。
  2. 削除するパラメータを含む行を選択し、「削除」をクリックします。
  3. パラメータが削除されます。
  4. 変更を保存する場合は「適用」をクリックし、破棄する場合は「元に戻す」をクリックします。

カスタム・ランタイム色スキームの作成

Oracle Formsには、アプレット・パラメータcolorschemeを使用して設定される事前定義済の色スキームが9つ用意されています。Oracle Forms 12c以降、用意されている色スキームを使用するかわりに、カスタマイズした色スキームを作成できます。カスタム色スキームを有効にするには、formsweb.cfgでcustomcolorscheme=<COLOR SCHEME NAME>を設定します。カスタマイズはRegistry.datで構成します。Registry.datには、sampleという名前の例が含まれています。このexampleを使用するには、formsweb.cfgでcustomcolorscheme=sampleを設定します。

ノート:

カスタム色スキーム内の仮想色はすべて、目的の色を表す有効な値を持つ必要があります。NULL値は無効であるとみなされます。いずれの値も無効である場合は、すべての色に対してcolorschemeパラメータに設定されている色スキームが使用されます。例外はdesktopのみです。desktopの値は空白にできますが、他のすべての値には有効な値が含まれている必要があります。

色値には、16進数字(0xFFFFFFなど)またはRGBセット(255,255,255など)を使用できます。次に例を示します。

# Sample custom color scheme, where scheme name is "sample".
colorScheme.sample.description=Sample custom color scheme
colorScheme.sample.lightest=0xFFFF33
colorScheme.sample.lighter=0xFFCC33
colorScheme.sample.light=0xCC3333
colorScheme.sample.dark=0x993333
colorScheme.sample.darker=0x660033
colorScheme.sample.darkest=0x003333
colorScheme.sample.selection=0x4169E1
colorScheme.sample.pinstripe1=0xEE82EE
colorScheme.sample.pinstripe2=0xF5DEB3
colorScheme.sample.desktop=0x5111F6
colorScheme.sample.smartBar=0xFFFFFF

グラデーション・キャンバスの色のカスタマイズ

グラデーション・キャンバスの色は設計時に設定されますが、実行時まで表示されません。

開始色は、キャンバスに設定された背景色に基づきます。色が設定されていない場合は、ランタイムのcolorschemeによって実装された色が使用されます。開発者は設計時に、グラデーション・フローの開始位置(「なし」、「左」、「上」、「右」または「下」)を選択できます。色の開始点から終了点までの差は、次の設定を使用してランタイム構成Registry.datに設定されます。

default.gradient.redDelta 
default.gradient.greenDelta 
default.gradient.blueDelta

これらの設定は、キャンバスの背景色に指定の値がある場合にのみ適用されます。それぞれには、終了色に到達するまでに開始値から加算(または減算)する量を表す整数値を指定します。色範囲は0から255までの値を想定しています。したがって、開始色のRGB値が150,150,150で、各デルタ・プロパティが50に設定されている場合、終了色は200,200,200になります。同様に、プロパティには負の値を指定できます。たとえば、すべてが-50に設定されている場合、終了色は100,100,100になります。赤、緑、青のデルタ値を0に設定したり、設定を解除したりすると、色は変更されません。ただし、未設定のままキャンバスの背景色が設定されていない(<Unspecified>)場合、colorschemeの色が使用され、グラデーションはOLAFDarkからOLAFVeryLightに変わります。

customize_gradient-png.pngの説明が続きます
図customize_gradient-png.pngの説明

メイン・キャンバスより大きく、セッションの後半で表示される非表示のスタック・キャンバスがある場合は、この機能を使用することをお薦めしません。これは、グラデーションの塗りつぶしパターンが初期起動時にのみ描画されるためです。実行時に表示領域を変更すると、グラデーション・フローが不完全になる場合があります。コンテンツとスタック・キャンバスの両方でグラデーションを使用すると、色の遷移が互いに同期しなくなることに注意してください。これは、あるキャンバス上の色設定が、別のキャンバス上の色設定とは無関係であるためです。追加の使用方法および制限情報は、Form Builderのヘルプを参照してください。

アプリケーションのフォントの管理

Fusion Middleware Controlでは、デフォルトのフォントおよびRegistry.datファイルのフォント設定を変更できます。

フォント名は、いずれもJavaフォントの名前です。各パラメータは、指定がない場合のデフォルトのプロパティを示します。

配布されたアプリケーションのフォント設定を変更するには:

  1. Fusion Middleware Controlを起動します。
  2. 「Forms」メニュー・リストから「フォントとアイコンのマッピング」を選択します。
  3. 次の表の説明に従って、目的のフォント設定となるように設定を変更します。

    表-23 デフォルトのフォント値

    プロパティ デフォルト値 説明
    default.fontMap.appFontnames Courier New, Courier,courier,System, Terminal,Fixedsys,Times, Times New Roman,MS Sans Serif,Arial

    デフォルトのフォント・マッピング。アプリケーションのフォント名をカンマで区切ったリストです。

    appFontnameリスト内のエントリ数は、javaFontnameリスト内の数と一致する必要があります。リストの要素はカンマで区切られ、すべての文字は文字どおりの意味を持ち、前後の空白はフォント名から削除されます。

    このファイルは、NLS Planeを処理できるように、Java 1.1のフォント名を使用します。

    default.fontMap.defaultFontname Dialog デフォルトのJava fontNameを表します
    default.fontMap.defaultMapping FULL

    値はFULL、PARTIALおよびNONEです。

    • FULLに設定した場合、Javaフォント・マッピング・メカニズムが使用されます。アプリケーション指定のフォントは、Javaフォントにマップされます。

      指定のJavaフォントがappFontnames (default.fontMap.appFontnames)リストで見つからない場合は、(default.fontMap.defaultFontnameで定義されている)デフォルトのJavaフォントが使用されます。

    • PARTIALに設定した場合、Javaフォント・マッピング・メカニズムが使用されます。アプリケーション指定のフォントがappFontnamesリスト内に見つからない場合、Formsはアプリケーション指定のフォントの使用を試みます。
    • NONEに設定した場合、Javaフォント・マッピング・メカニズムは使用されません。アプリケーション指定のフォント名はJavaに直接渡され、Formsはその使用を試みます。
    default.fontMap.defaultSize 900 デフォルトのfontSizeを表します。サイズには100が乗算されるので注意してください。たとえば、10ptのフォントのサイズは1000です。
    default.fontMap.defaultStyle PLAIN デフォルトのfontStyle (PLAINまたはITALIC)を表します。
    default.fontMap.defaultWeight PLAIN デフォルトのfontWeight (PLAINまたはBOLD)を表します。
    default.fontMap.javaFontnames MonoSpaced, MonoSpaced,MonoSpaced, Dialog,MonoSpaced,Dialog, Dialog,Serif,Serif, Dialog,Sans Serif Javaフォント名をカンマで区切ったリストです。

    たとえば、デフォルトのフォントをTimes New Romanに変更するには、DialogTimes New Romanに置き換えます。

    デフォルトのフォント・マッピングは、次のように変更できます。

    default.fontMap.appFontnames=Courier New,Courier,
    courier,System,Terminal,Fixed,Fixedsys,Times,Times New Roman,
    MS Sans Serif,Arial
    default.fontMap.javaFontnames=MonoSpaced,MonoSpaced,MonoSpaced,Dialog,
    MonoSpaced,Dialog,Dialog,Serif,Serif,Dialog,SansSerif
    

    ノート:

    Javaではサポートされないフォントもあります。そのため、対応しないフォントが見つかったときに表示されるJava対応のフォントを指定する(マップさせる)ことができます。前述の例では、default.fontMap.appFontnamesの各フォントは、default.fontMap.javaFontnamesのフォントに対応しています。
  4. 「適用」をクリックして変更を保存します。

ユーザーがインストールしたフォントの使用

フォント・フェースを明示的に宣言したアプリケーションは、そのフォントがローカルにインストールされているユーザーのマシンにインストールされているフォントを利用できます。

たとえば、アプリケーションにテキスト・アイテムやボタンなどのFormsオブジェクトがあり、それらのアイテムのラベルにTimes New Romanというフォントを使用するように開発者が定義している場合、それらのアイテムは、ユーザーのマシンで検出されると、実行時にその名前のフォントを使用して表示されます。

この機能を有効にするには、Registry.datパラメータdefault.fontMap.defaultMappingを次の3つの値のいずれかに設定します。

  • full: (デフォルト) Javaフォント・マッピング・メカニズムが使用されます。指定されたフォントがappFontnamesリスト内に見つからない場合は、デフォルトのフォントが使用されます(Registry.datdefaultFontnameパラメータで定義)。
  • partial: Javaフォント・マッピング・メカニズムが使用されます。指定されたフォントがappFontnamesリスト内に見つからない場合、要求されたフォントがJavaに直接渡され、Javaは指定されたフォント(ユーザーのマシンで見つかった場合)の使用を試みます。
  • none: Javaフォント・マッピング・メカニズムは使用されません。要求されたフォントがJavaに直接渡され、Javaは指定されたシステム・フォント(ユーザーのマシンで見つかった場合)の使用を試みます。

アプリケーションのアイコン、イメージまたは音声ファイルのデプロイ

Oracle Formsアプリケーションをデプロイする場合、使用するアイコンおよびイメージ・ファイルはJPGやGIF (GIFがデフォルトの形式)などのWeb対応形式にする必要があります。これは音声ファイルについても同様です。サポートされている音声ファイル形式については、Java JFXドキュメント(https://docs.oracle.com/javafx/2/api/javafx/scene/media/package-summary.html#SupportedMediaTypes)を参照してください.

デフォルトでは、アイコンはDocumentBaseディレクトリを基準とした相対パスにあります。つまり、DocumentBaseはアプリケーションの開始HTMLファイルのベース・ディレクトリを基準にした相対ディレクトリからイメージを検索します。開始HTMLファイルはFormsサーブレットにより動的にレンダリングされるので、FormsのwebappディレクトリがDocumentBaseになります。Formsのwebappのディレクトリは、$DOMAIN_HOME/servers/WLS_FORMS/tmp/_WL_user/formsapp_14.1.2/<random string>/warにあります。

たとえば、アプリケーションでボタンのアイコンのディレクトリをmyapp/<iconname>に定義している場合、そのアイコンはディレクトリforms/myapp内で検索されます。

デフォルトのディレクトリを変更するには、Fusion Middleware Controlの「Web構成」ページでimageBaseパラメータをcodebaseに設定します。または、$DOMAIN_HOME/config/fmwconfig/servers/WLS_FORMS/applications/formsapp_14.1.2/config/oracle/forms/registryディレクトリにあるRegistry.datファイルのdefault.icons.iconpath値を変更することもできます。

imageBaseパラメータをcodebaseに設定すると、Oracle Formsはforms/javaディレクトリでアイコン・ファイルを検索します。この設定を使用するのは、ユーザーのイメージがJARファイルに格納されている場合です。アプリケーションやOracle Formsのインストールに依存しない中央のディレクトリにイメージを格納するように、Registry.dat構成ファイルでイメージのディレクトリを変更しておくと便利です。

音声ファイルについても考え方は前述と同様ですが、mediaBaseRegistry.dat内のエントリでオーバーライドできません。JARファイルに格納されている音声ファイルの場合は、formsweb.cfgmediaBase=codeBaseを設定します。

格納 - アイコン、イメージまたは音声ファイルをJavaアーカイブ・ファイルへ

アプリケーションでカスタム・アイコン、イメージまたは音声ファイルを使用する場合、これらをJavaアーカイブ・ファイルに格納し、imageBase値をcodebase (および音声ファイルが含まれる場合はmediaBase=codeBase)に設定しておくようお薦めします。これらのファイルは、任意のJava Development Kit (Java JDK)のjarコマンドを使用してJavaアーカイブにパッケージ化できます。ただし、これは、そのバージョンが、エンドユーザーのマシンでの使用が想定されるバージョン以下であることが前提です。また、JARファイルは信頼できる証明書で署名されている必要があります。JARファイルの作成方法の詳細は、「アイコン、イメージおよび音声ファイルのJARファイルの作成」を参照してください

このアーカイブに格納したアイコン・ファイルにOracle Formsからアクセスできるようにするには、そのアーカイブをforms/javaディレクトリに格納する必要があります。また、アーカイブ・ファイルの名前は、Web構成(formsweb.cfg)ファイルのカスタム・アプリケーション・セクションで使用されているARCHIVEパラメータの一部にする必要があります。

アプリケーションがJava Web Start (JWS)で実行されている場合は、forms/javaディレクトリにあるextensions.jnlpのカスタムJARファイルを参照する必要があります。JWSはARCHIVEパラメータの値を読み取りません。このファイルは(テキスト・エディタで)手動で編集する必要があります。編集する前に、必ずForms管理対象サーバーを停止してください。初期アプリケーションを起動すると、JARファイルがクライアントにダウンロードされ、アーカイブ・ファイルを変更しないかぎりキャッシュに格納されたままになります。

JARファイルの作成方法の詳細は、「アイコン、イメージおよび音声ファイルが含まれるカスタムJARファイル」を参照してください。

ノート:

Oracle Formsのデフォルトのアイコン(デフォルトのスマート・アイコン・バーに表示されるアイコンなど)は、frmall.jarファイルの一部であるため、配置する必要はありません。

アイコンのマッピングの追加、変更および削除

アプリケーションで使用するRegistry.datファイルにアイコンの変更を追加するには、Fusion Middleware Controlを使用します。

アイコンのマッピングを追加するには:

  1. Fusion Middleware Controlを起動します。
  2. 「Forms」メニューから「Formsのフォントとアイコンのマッピング」を選択します。
  3. 「追加」をクリックします。

    「追加」ダイアログが表示されます。

  4. 名前、値およびオプションのコメントを入力します。
  5. 「作成」をクリックしてマッピングを作成します。

    マッピングがリストに追加されます。

  6. 「適用」をクリックして変更を保存します。

アイコンのマッピングを変更するには:

  1. 「フォントとアイコンのマッピング」リージョンで、変更するマッピングを選択します。
  2. マッピングの名前と値を変更します。たとえば、
    • アイコンのディレクトリを指定するiconpathパラメータを次のように変更します。

      default.icons.iconpath=/mydir

      (絶対パスの場合)

      または

      default.icons.iconpath=mydir

      (DocumentBaseディレクトリから始まる相対パスの場合)

    • iconextensionパラメータを次のように変更します。

      default.icons.iconextension=gif

      または

      default.icons.iconextension=jpg

  3. 「適用」をクリックして、変更を保存し有効にします。

アイコンのマッピングを削除するには:

  1. 「フォントとアイコンのマッピング」リージョンで、削除するマッピングを選択します。
  2. 「削除」をクリックします。
  3. 選択したアイコンのマッピングが削除されます。
  4. 変更を保存する場合は「適用」をクリックし、破棄する場合は「元に戻す」をクリックします。

アプリケーション・ファイルを参照するには:

Web構成(formsweb.cfg)内の名前を付けた固有の構成セクションで、serverAppパラメータの値を変更し、ユーザーのアプリケーション・ファイルのディレクトリと名前で値を設定します。

次に例を示します。

[my_app]

ServerApp=http://example.com/appfile/myapp

(絶対パスの場合)

または

[my_app]

ServerApp=appfile/myapp

(CodeBaseディレクトリを基準とする相対パスの場合)

表-24は、アプリケーション・アイコンを配置する正しい場所を示したものです。

表-24 アイコンのディレクトリ・ガイド

アイコンの位置 状況 方法
DocumentBase デフォルトです。カスタム・アイコンが少ないかまったくないアプリケーション。 アイコンをFormsのwebappのディレクトリまたはその相対ディレクトリに格納します。Formsのwebappのディレクトリは、$DOMAIN_HOME/servers/WLS_FORMS/tmp/_WL_user/formsapp_14.1.2/<random string>/warにあります。
Javaアーカイブ 多くのカスタム・アイコンを使用するアプリケーション。 ImageBasecodebaseに設定し、アイコンのJavaアーカイブ・ファイルを作成したら、アーカイブ・ファイルをformsweb.cfgのアーカイブ・パラメータに追加します。
Registry.dat

Oracle Formsのインストールとは異なる場所(別のサーバー)に保存されているカスタム・アイコンがあるアプリケーション。

Registry.datファイルでフォント・マッピングなどの他の変更を行う必要がある場合に有効です。

Registry.datをコピーし、formsweb.cfgのServerAppパラメータを変更します。

スプラッシュ画面イメージおよびバックグラウンド・イメージ

アプリケーションを配布する場合、(接続中に表示される)スプラッシュ画面イメージおよびバックグラウンド・イメージ・ファイルを指定することができます。

これらのイメージはHTMLファイルで定義するか、Fusion Middleware Controlの「Web構成」ページを使用できます。

<PARAM NAME="splashScreen" VALUE="splash.gif">

<PARAM NAME="background" VALUE="back.gif">

スプラッシュ画面およびバックグラウンド・イメージ・ファイルのデフォルト・ディレクトリは、ベースHTMLファイルが含まれているDocumentBaseディレクトリ内にあります。

ノート:

スプラッシュ画面とアイコンのイメージ形式は、java.awt.Imageでサポートされている標準形式です。java.awt.Imageの詳細は、http://www.oracle.com/technetwork/java/index.htmlでJava Advanced Imaging (JAI) APIを参照してください。

アイコン、イメージおよび音声ファイルが含まれるカスタムJARファイル

(スプラッシュ画面またはバックグラウンドの)アイコンまたはイメージを使用するたびに、HTTPリクエストがWebサーバーに送信されます。クライアントとサーバー間のHTTPラウンドトリップ数を減らすには、Javaアーカイブ(JAR)ファイルにこれらのファイルを格納するための機能を使用します。この方法を使用すると、JARファイルをダウンロードするのに、1回のHTTPラウンドトリップのみで済みます。

アイコン、イメージおよび音声ファイルのJARファイルの作成

Java JDKには、JARと呼ばれる実行可能ファイルが含まれています。https://docs.oracle.com/javase/8/docs/technotes/tools/windows/jar.htmlで説明されているように、このユーティリティを使用すると、ファイルをJavaアーカイブ内に格納できます。

次に例を示します。

jar -cvf myico.jar Splash.gif Back.gif icon1.gif

このコマンドにより、myico.jarと呼ばれる単一のJARファイルに3つのファイル(Splash.gifBack.gificon1.gif)が格納されます。

ノート:

Java JARファイルは、実行時に追加のセキュリティ警告を表示せずにアクセスできるように、信頼できる証明書を使用して署名する必要があります。https://docs.oracle.com/javase/tutorial/deployment/jar/signindex.htmlを参照してください。

JARファイル内でのファイルの使用

アイコンおよびイメージのデフォルトの検索パスは、documentBaseを基準とした相対パスです。ただし、それらのファイルを格納するためにJARファイルを使用する場合、検索パスは、Javaアプレットを含むディレクトリであるcodebaseディレクトリを基準とする相対パスにする必要があります。

JARファイルを使用してファイルを格納するには、Web構成ファイルまたはHTMLファイル内のimageBaseパラメータを使用して、検索パスがcodebaseを基準とした相対パスになるように指定する必要があります。

このパラメータには次の2つの異なる値を指定できます。

  • documentBase: 検索パスはdocumentBaseディレクトリを基準とした相対パスです。imageBaseの値を指定しない場合は、documentBaseの値が使用されます。

  • codeBase: 検索パスはJARファイルを使用できるようにするcodeBaseディレクトリを基準とした相対パスです。

この例では、アイコンを含むJARファイルを使用して、検索がcodeBaseの相対パスになるように指定します。パラメータimageBaseを設定していない場合は、documentBaseを基準とした相対的な検索となり、アイコンはJARファイルからは検索されません。

たとえば(formsweb.cfg):

archive=frmall.jar, icons.jar

imageBase=codeBase

音声ファイルの場合は、mediaBase=codeBaseを設定します

スマート・バーのサイズのカスタマイズ

Oracle Formsアプリケーションのスマート・バーのサイズおよびアイコンは、様々なアイコン・サイズに合うようにカスタマイズできるようになりました。これは、Oracle Formsアプリケーションが高解像度(DPI)モニターで実行されている場合に、ツール・バー・アイコンを均等に拡大またはサイズ変更するのに役立ちます。

以前のリリースでは、スマート・バーおよびそのアイコンのデフォルト・サイズは、Formの他のオブジェクトとは異なり、clientDPIを使用してカスタマイズ、設定またはスケール変更することはできませんでした。

スマート・バーのデフォルトの高さは現在、16x16ピクセル・サイズのアイコンに合せることができます。スマート・バーの高さをより大きいアイコンに合せることができるようにカスタマイズまたは設定するために、新しいアプレット・パラメータsmartBarHeightが追加されています。smartBarIconScalingパラメータとsmartBarHeightパラメータを組み合せて使用すると、アイコン(小さい場合)の大きさを調整するかどうかを指定できます。これらのパラメータの詳細は、「Web構成パラメータ」を参照してください。

値DYNAMICは、スマート・バーがclientDPI設定でどのような値が指定されてもその値を継承することを意味します。そのため、スマート・バーおよびデフォルトのアイコン・サイズは、Formの他のオブジェクトと同様に、clientDPI設定を使用して均等にスケール変更されます。clientDPI設定が指定されているのに、smartBarHeightのパラメータ値が設定されていない場合、スマート・バーはclientDPIを使用して均等にスケール変更されず、デフォルトの小さいサイズのスマート・バーおよびアイコンが表示されます。

ノート:

デフォルトのメニューまたはスマート・バーで使用するためにFormsに同梱されているアイコンは変更されません。smartBarHeightに対してパラメータ値MEDIUMまたはLARGEを設定する場合は、Formsに同梱されているデフォルトのメニュー・バーおよびスマート・バーのアイコンを使用するのではなく、独自のカスタマイズしたメニュー・バーおよびアイコン、つまり大きいピクセル・サイズのアイコンを作成する必要があります。

UIの枠線のカスタマイズ

一部のUIアイテム(編集アイテム、表示アイテム、ポップリスト、コンボボックス、Tリスト、イメージなど)の枠線は、Registry.datの枠線設定を使用してカスタマイズできます。

これらの設定によって、表示される枠線と、これらの枠線のデフォルト、ロールオーバーおよびハイライトの色を制御できます。

UIの枠線の設定

Oracleルック・アンド・フィールを使用する際は、編集アイテム、表示アイテム、ポップリスト、コンボ・ボックス、Tリスト、イメージなどのアイテムに1つ以上の枠線を描画します。表示する枠線を設定した後、ビルダー・プロパティを介して、これらの値を使用するフィールドを指定します。

枠線は、Registry.datで変数default.border.rightdefault.border.leftdefault.border.topおよびdefault.border.bottomを使用して設定します。これらの変数はブール値を取ります。デフォルトはTRUEです。詳細は、「レジストリ設定」を参照してください。

たとえば、アイテムが下線付きフィールドの外観になるように枠線を設定するには、default.border.bottomをTRUEに設定し、他の3つをFALSEに設定します。次に、この外観にするアイテムにビルダー・プロパティを設定する必要があります。

アイテムにレジストリ変数を設定したら、ビルダー・プロパティを設定して、フィールドにこれらの値を使用するかどうかを指定します。Specified Border SidesプロパティをFALSE (デフォルト)に設定した場合、アイテムのベベルは標準の外観になります。たとえば、PLAINのベベルの外観はフィールドを囲む四角になり、浮出しまたはくぼみのベベルの外観は3次元になる、などです。

Specified Border SidesをTRUEに設定した場合、アイテムを囲む辺にPLAINベベルが適用されます。

このプロパティは、plsqlでSET_ITEM_PROPERTYおよびGET_ITEM_PROPERTYを使用して設定および取得することもできます。plsqlで使用されるプロパティは、BORDER_SIDESです。

XMLコンバータも更新されているため、COMPAT_VERSIONを12.2.1.4.0に設定してコンバータを実行すると、生成されるXMLファイルにこのプロパティは含まれません。つまり、古いバージョンのXMLコンバータでXMLを読み取れば、古いビルダーで適切に読み取ることができるfmbファイルを作成できます。

UIの枠線のテスト

UIの枠線の外観をテストする際は、次の点に注意してください:

  • それぞれの値が期待した効果を生むこと、また値を様々に組み合せても期待どおりの結果になることを確認します。たとえば、左枠線と下枠線を設定した場合、フィールドの左側と下側に線が表示され、上側と右側には表示されない必要があります。
  • いずれかのレジストリ・エントリに欠落した値または無効な値がある場合は、無視されてTRUEとして処理される必要があります。
  • これはどのベベル・スタイルを設定したアイテムにも適用される必要がありますが、(ビルダーまたはplsqlを介して)新しいプロパティがオンになっているアイテムのみが部分枠線を取得し、それ以外のアイテムはそれまでどおり、指定のベベルで描画された枠線全部を取得する必要があります。
  • このプロパティを動的にオンまたはオフにすると、期待した結果になる必要があります。
  • ベベルを動的にPLAINに変更したり、PLAIN以外の値に変更すると、このプロパティが設定されていないアイテムに対して期待した効果を生む必要があります。このプロパティが設定されているアイテムについては、ベベルの外観は変更されてはいけません。
  • これは、編集アイテム、表示アイテム、ポップリスト、コンボ・ボックス、リストおよびイメージに対して正しい効果を生む必要があります。
  • これは、単一行および複数行(スクロール・バーあり、またはなし)のテキスト・アイテムに対して正しい効果を生む必要があります。
  • 枠線はインスタンス変数ではなくクラス変数として作成されるため、Registry.datでこれらの値の一部を変更した場合、変更を有効にするには、ブラウザを閉じるか、クライアントの新しいJVMで実行する必要があります。
  • エッジの色設定を指定可能な新機能と組み合せてこれを使用する場合、これらの部分枠線は、その機能が指定されているフィールドに対してエッジの色設定を正しく取得する(他のフィールドにはデフォルトの色設定を使用する)必要があります。

枠線の色の設定

Oracleルック・アンド・フィールを使用する際は、テキスト・アイテム、表示アイテム、ポップリスト、コンボボックス、Tリストおよびイメージの枠線に色を指定します。

枠線の色は、Registry.datdefault.border.colorを使用して設定します。この変数は、カンマで区切ったRGB値を取ります("0,255,0"など)。この変数を設定しない場合、または設定が無効な場合、枠線の色はデフォルトの赤になります。詳細は、「レジストリ設定」を参照してください。

この変数を設定すると、枠線は、現在の色スキームのデフォルトの色ではなく指定した色で表示されます。また、ベベルがどのように指定されていても、枠線の外観はPLAINになります。

ノート:

この設定は、枠線の表示の変数と組み合せて使用できます。枠線の色の変数と枠線の表示の変数を設定した場合、表示される枠線のみが指定した色になります。「UIの枠線の設定」を参照してください。

アイテムのレジストリ変数を設定したら、ビルダー・プロパティを設定して、フィールドにこの値を使用するかどうかを指定します。Show Border Colorビルダー・プロパティは、枠線の色をアイテムの枠線に適用するかどうかを決定します。このプロパティはブール値を取ります。このプロパティをTRUEに設定した場合、枠線は指定した色になります。

このプロパティは、テキスト・アイテム、表示アイテム、ポップリスト、コンボ・ボックス、Tリストおよびイメージのアイテム・タイプ(単一行フィールドと複数行フィールドの両方を含む)に適用されます。

このプロパティは、pslql定数BORDER_COLORを使用して、SET_ITEM_PROPERTYを介して設定し、GET_ITEM_PROPERTYを介して取得することもできます。ER 33471569では、RGB値に加えて様々なOLAFカラー名を使用できるようになりました。

XMLコンバータも更新されているため、COMPAT_VERSIONを12.2.1.4.0に設定してコンバータを実行すると、生成されるXMLファイルにこのプロパティは含まれません。つまり、古いバージョンのXMLコンバータでXMLを読み取れば、古いビルダーで適切に読み取ることができるfmbファイルを作成できます。

UIの枠線のテスト

枠線の色の外観をテストする際は、次の点に注意してください:

  • 編集アイテム(単一行と複数行の両方、スクロール・バーあり、またはなし)と、表示アイテム、ポップリスト、コンボ・ボックス、Tリストおよびイメージに対して正しい効果を生むことを確認します。
  • 他のいずれのアイテム・タイプでも問題が発生しないことを確認してください
  • ベベル・スタイルの設定にかかわらず、ベベル/枠線の外観はPLAIN (ただし色付き)になります。
  • 部分枠線がオンになっている場合は、色設定と部分枠線が正しく組み合せされていることを確認します。これには、この値を動的に設定するだけでなく、このプロパティがオンのときにはアイテムの部分枠線サポートのオン/オフを動的に設定することも含まれます。
  • 表示アイテムについて、値を単一行値から複数行値(またはその逆)に変更した場合にもこれが正しい結果になることをテストします。具体的には、その変更を行った後も、ハイライトされた枠線が維持されるか確認します。
  • このプロパティと後述のハイライト枠線の相互作用が期待したとおりになることを確認する必要があります。(たとえば、アイテムのハイライトをオンにするとその色が使用され、オフにするとこれに指定された色に戻る必要があります(枠線の色設定が有効になっている場合)。
  • ウィンドウが非アクティブになったときに正しい設定が適用されることを確認します。

ロールオーバーの枠線の色の設定

ユーザーがアイテムの上にマウスを置いたときに、テキスト・アイテム、表示アイテム、ポップリスト、コンボボックス、Tリストおよびイメージの枠線を表示する色を指定します。

枠線の色は、Registry.datdefault.border.rolloverColorを使用して設定します。この変数は、カンマで区切ったRGB値を取ります("0,255,0"など)。この変数を設定しない場合、または設定が無効な場合、枠線の色はデフォルトの赤になります。詳細は、「レジストリ設定」を参照してください。

この変数を設定した場合、アイテムのベベル設定に関係なく、マウスを重ねるとロールオーバーの枠線の色が表示されます。表示される設定になっている枠線のみに、ロールオーバーの枠線の色が適用されます。

ノート:

この設定は、枠線の表示の変数と組み合せて使用できます。ロールオーバーの色の変数と枠線の表示の変数を設定した場合、マウスを重ねると、表示される枠線のみが指定した色で表示されます。「UIの枠線の設定」を参照してください。

アイテムのレジストリ変数を設定したら、ビルダー・プロパティを設定して、フィールドにこの値を使用するかどうかを指定します。Rollover Border Colorビルダー・プロパティは、マウスを重ねたときにロールオーバーの色をアイテムの枠線に適用するかどうかを決定します。このプロパティはブール値を取ります。このプロパティをTRUEに設定した場合、マウスをアイテムの上に置くと、枠線は指定した色になります。

このプロパティは、テキスト・アイテム、表示アイテム、ポップリスト、コンボ・ボックス、Tリストおよびイメージのアイテム・タイプ(単一行フィールドと複数行フィールドの両方を含む)に適用されます。

ロールオーバーの枠線の色は、有効になっているアイテムに対してのみ表示されます。無効になっているアイテムにはロールオーバーの色は表示されません。つまり、モーダル・ウィンドウが表示されている場合、モーダル・ウィンドウが見えている間はそのウィンドウ内にないアイテムは事実上無効になるため、ロールオーバーの枠線の色は適用されません。

このプロパティは、pslql定数BORDER_ROLLOVERを使用して、SET_ITEM_PROPERTYを介して設定し、GET_ITEM_PROPERTYを介して取得することもできます。ER 33471569では、RGB値に加えて様々なOLAFカラー名を使用できるようになりました。

XMLコンバータも更新されているため、COMPAT_VERSIONを12.2.1.4.0に設定してコンバータを実行すると、生成されるXMLファイルにこのプロパティは含まれません。つまり、古いバージョンのXMLコンバータでXMLを読み取れば、古いビルダーで適切に読み取ることができるfmbファイルを作成できます。

ノート:

このメカニズムと、このドキュメントに記載した枠線の色に関連する他の機能との相互作用は、少し複雑になることがあります(具体的には、マウスがアイテムの上にある間に、誰かがプロパティの一部を変更したり、ハイライト表示をオンにした場合)。たとえば、枠線の外観を変えるような変更が行われた場合(ハイライト表示がオンになった、ベベルが変更されたなど)、マウスがそのアイテムを離れると何も起こりません。マウスを再びそのアイテムの上に置くと、ロールオーバーの効果が再び出現します(それがアイテムに対してまだ有効になっている場合)。

この機能をテストする際には、テストが必要な側面の中でも、特に次のことを確認する必要があります:

  • 編集アイテム(単一行と複数行の両方)と、表示アイテム、ポップリスト、コンボボックス、Tリストおよびイメージに対して正しい効果を生むことを確認します。マウスを複数行テキスト・フィールドのスクロール・バーの上に置くと、アイテム内にないものとして扱われます。それに対してできることは何もないので、軽微な制限として受け入れるしかありません。
  • 他のいずれのアイテム・タイプでも問題が発生しないことを確認してください
  • 部分枠線が有効になっている場合は、これが正しい結果を生むことを確認してください。
  • 表示アイテムについて、値を単一行値から複数行値(またはその逆)に変更した場合にもこれが正しい結果になることをテストする必要があります。具体的には、その変更を行った後も、ハイライトされた枠線が維持されるか確認します。
  • このプロパティと他の枠線プロパティとの相互作用が期待したとおりになることを確認する必要があります。特に、マウスをアイテムの上に置いている間にいずれかのプロパティが変更された場合(それによって枠線の外観が一時的に変更された場合)です。

枠線のハイライト・カラーの設定

テキスト・アイテム、表示アイテム、ポップリスト、コンボボックス、Tリストおよびイメージの枠線を表示するハイライト・カラーを指定します。

枠線のハイライト・カラーは、Registry.datdefault.border.highlightColorを使用して設定します。この変数は、カンマで区切ったRGB値を取ります("0,255,0"など)。この変数を設定しない場合、または設定が無効な場合、枠線の色はデフォルトの赤になります。詳細は、「レジストリ設定」を参照してください。

枠線をハイライトするには、SET_ITEM_PROPERTY(BORDER_BEVEL)およびSET_ITEM_INSTANCE_PROPERTY(BORDER_BEVEL)HIGHLIGHTEDに設定します。ベベルをHIGHLIGHTEDに設定すると、default.border.highlightColorの色値を使用して枠線を描画するようにクライアントに指示します。

この機能を使用すると、検証に失敗したアイテムをハイライトできます。通常の枠線の色設定と同様に、この色設定は、警告や他のウィンドウが呼び出された場合など、ウィンドウが非アクティブになっていても維持されます。ウィンドウが非アクティブの場合、外観はわずかに変化しますが、それでもハイライトされたフィールドとして区別できます。

ノート:

RGB値に加えて、OLAFカラー名("OLAFLight""OLAFDark"など)を使用できます。

この機能をテストする際には、テストが必要な側面の中でも、特に次のことを確認する必要があります:

  • 編集アイテム(単一行と複数行)と、アイテム項目、ポップリスト、コンボボックス、Tリストおよびイメージに対して正しい効果を生むことを確認します。
  • 他のいずれのアイテム・タイプでも問題が発生しないことを確認してください
  • set_item_propertyとset_item_instance_propertyの両方に対して正しい効果を生むことを確認します。
  • (HIGHLIGHTED値を使用せずに)ベベルを別のベベルに変更しても、正しい効果を生むことを確認します。これは実装上の理由からです。ベベルをnullに設定しても(以前に設定した色をクリアするときに行う操作)、何も問題が起こらないことを確認する必要があります。
  • レジストリ値を変更し、フォームを再度実行すると、ブラウザを再起動しなくても新しい色が適切に取得される必要があります(ハイライトされた1つのborderpainterではなく、使用する色ごとに別々のborderpainterを作成します)。
  • 表示アイテムについて、値を単一行値から複数行値(またはその逆)に変更した場合にもこれが正しい結果になることをテストする必要があります。具体的には、その変更を行った後も、ハイライトされた枠線が維持されるか確認します。
  • アイテム(またはインスタンス)がHIGHLIGHTEDに設定されている場合、GET_ITEM_PROPERTYおよびGET_ITEM_INSTANCE_PROPERTYは、該当する場合に'HIGHLIGHTED'をベベル値として返します。

レジストリ設定

この項では、Formsのレジストリ設定について説明します。

ここで示す表には、次のノートが適用されます。

  • 必須: Formsが正しく機能するために非NULL値を必要とする場合、その環境変数は必須です。
  • 有効な値: いくつかのケースでは、これらは明示的にリストされますが、ほとんどの場合、説明から推測できます。

    説明で値がブール値であることが示されている場合(たとえば、「かどうかを指定します」と記載されている)、有効な値は、特に指定がないかぎり、TRUE、True、true、T、t、YES、Yes、yes、Y、y、1、またはFALSE、False、false、F、f、NO、No、no、N、n、0 (大/小文字を区別する)です。 特に指定がないかぎり、数値は、10進数として指定された整数である必要があり、必要に応じてK、M、GまたはT [1000ではなく1024の累乗]が後に続きます。ファイルまたはディレクトリのリスト内の要素は、特に指定がないかぎり、':' [UNIX]または';' [Windows]で区切る必要があります。

  • デフォルト: 指定すると、これは値を指定しない場合と同じ動作をもたらす非NULL値です。省略すると、デフォルト値がnullであることを表しています。

表-25 追加のRegistry.dat設定

プロパティ デフォルト値 説明
default.tabLabel.selectedColor  

選択されたタブのラベル色をRGBの色値(たとえば、255,255,0 (黄色))で指定します。R、GまたはBのプライマリそれぞれに、0から255までの値を指定できます。

値が指定されていない場合、または設定が無効な場合、選択されたタブではデフォルトの色が使用されます。

ノート:

この設定は、Oracleルック・アンド・フィールを使用する場合にのみサポートされ、汎用ルック・アンド・フィールを使用する場合には無視されます。
default.tabLabel.unselectedColor  

選択されていないタブのラベル色をRGBの色値(たとえば、255,255,0 (黄色))で指定します。R、GまたはBのプライマリそれぞれに、0から255までの値を指定できます。

値が指定されていない場合、または設定が無効な場合、選択されていないタブではデフォルトの色が使用されます。

ノート:

この設定は、Oracleルック・アンド・フィールを使用する場合にのみサポートされ、汎用ルック・アンド・フィールを使用する場合には無視されます。

default.border.right

default.border.left

default.border.top

default.border.bottom

True

アイテム(編集アイテム、表示アイテム、ポップリスト、コンボ・ボックス、Tリスト、イメージ・アイテム)を囲む辺に枠線を表示するかどうかを指定します。これらの設定はブール値を取ります。

default.concealedData.character

* (アスタリスク)

隠しデータ・フィールド(ログオン・ダイアログのパスワード・フィールドを含む)に表示する、入力される非表示文字を表す文字を指定します。

複数の文字の値を指定した場合、値の最初の文字が使用されます。

特殊文字の場合は、先頭に\uを付けた文字のUnicode文字値を指定します。たとえば、小さいドットを使用する場合は、\u2022と入力します。大きなドットの場合は、\u25cfと入力します。

Registry.datでプロパティが指定されていない場合、または値が空の場合は、* (アスタリスク)が使用されます。

Registry.datで値を変更した場合、変更を有効にするには、新しいJVMを取得するためにブラウザを再起動する必要があります。

ノート:

レジストリ設定の"デフォルト"のdefault.concealedData.characterは、アプリケーション名を示します。別のアプリケーション名を指定すると、アプリケーションごとに異なる文字を使用できます。
default.fontMap.defaultMapping FULL

フォント処理の管理方法を制御します。値はFULL、PARTIALおよびNONEです。

  • FULLに設定した場合、フォント・マッピング・メカニズムが使用されます。指定されたフォントがappFontnamesリスト内に見つからない場合は、デフォルトのフォントが使用されます。
  • PARTIALに設定した場合、フォント・マッピング・メカニズムが使用されます。指定されたフォントがappFontnamesリスト内に見つからない場合、要求されたフォントがJavaに直接渡され、Javaは指定されたフォントの使用を試みます。
  • NONEに設定した場合、フォント・マッピング・メカニズムは使用されません。要求されたフォントがJavaに直接渡され、Javaは指定されたフォントの使用を試みます。
default.icons.style  

Formsで使用されるアイコンとイメージのセットを指定します。

14.1.2.0.0には、Formsランタイム・スマート・バーおよびアラート・アイコンのイメージを含む新しいPNGイメージ・セットが含まれています。Formsのjarfile (frmall.jar)に格納されている古いGIFイメージに戻すには、default.icons.styleを"legacy"に設定します。

Formsスマート・バットで使用されるGIF用の新しいPNGファイルに加えて、メニュー・バー、スプラッシュ画面イメージおよびバックグラウンド・イメージに表示されるOracleロゴ用の新しいPNGファイルも提供されています。さらに、EWTアラート(エラー、警告、情報)用のPNGファイルも提供されているため、新しいスタイル・アイコンを使用している場合にはアラートの外観も新しくなります。

ノート:

一部のアイコンは、レジストリが読み取られる前にロードされます。このため、新しいレジストリ値が"legacy"に設定されていても、これらのアイコンは新しいPNGファイルを使用します。これには、スプラッシュ画面、メニューバーのロゴ、背景イメージが含まれます。