Oracle APEX 22.1より、以下のようにログイン画面をカスタマイズしたり、
以下に設定方法を紹介します。
元ネタはOracle APEXの開発チームが公開しているYouTubeのImproved Region Images Support in Oracle APEX 22.1です。2分16秒ですので、英語が苦でなければ動画を見た方が早いかもしれません。
アプリケーションの静的アプリケーション・ファイルとして、以下の4つ画像がアップロード済みとします。
#APP_FILES#fujisan-banner.jpg - アプリケーションのバナーに表示する富士山の画像。
#APP_FILES#fujisan-region.jpg - ファセット検索のリージョンの上に表示する富士山の画像。
#APP_FILES#kangaroo-square.jpg - ログイン画面のアイコンとして表示するカンガルーの画像。
#APP_FILES#kangaroo-background.jpg - ログイン画面のバックグラウンドに表示するカンガルーの画像。
ログイン画面のアイコン
ログイン・ページに含まれるリージョン(外観のテンプレートとしてLoginが設定されているリージョン)のプロパティに、イメージのファイルURLがあります。このプロパティに、ログイン画面のアイコンとして表示する画像を指定します。
今回は#APP_FILES#kangaroo-square.jpgを指定しています。
ログイン画面のバックグラウンド画像
リージョンを作成し、レイアウトの位置をBackground Imageに設定します。外観のテンプレートにImageを指定し、イメージのファイルURLに画像のURLを指定すると、指定した画像がログイン画面のバックグランドに表示されます。
今回は#APP_FILES#kangaroo-background.jpgを指定しています。
表示される画像は、テンプレート・オプションの指定により調整できます。
ログイン画面の表示は以下のように変わります。
リージョンにサーバー側の条件を設定することにより、バナーを表示するページを選択することができます。
バナーの画像
アプリケーションのほとんどのページで表示するため、グローバル・ページ(ページ番号0)にリージョンを作成します。レイアウトの位置にBannerを選択します。
外観のテンプレートにImageを選択し、イメージのファイルURLに表示する画像のURLを設定します。
今回は#APP_FILES#fujisan-banner.jpgを指定しています。
標準のタイプには現在のページはカンマで区切られたリストに含まれる、現在のページはカンマで区切られたリストに含まれない、という条件があります。タイプにファンクション本体を選択し、PL/SQLのコードを記述することにより、管理ページを除くといった条件を作ることも可能です。
ページ・テンプレートに位置Bannerが登録されていないモーダル・ダイアログやログイン・ページでは、Bannerに配置したリージョンは表示されません。そのため、これらのページについて、サーバー側の条件を使って非表示にする必要はありません。
リージョンの画像
リージョンを作成し、表示したい位置にリージョンを配置します。これが、最も基本的な使い方と言えるでしょう。
外観のテンプレートにImageを選択し、イメージのファイルURLに表示する画像のURLを指定します。
今回は#APP_FILES#fujisan-region.jpgを指定しています。
ページ・プロパティのイメージで指定しているファイルURL、アクセシビリティ対応の説明、カスタム属性はそれぞれ、HTMLのIMGタグのSRC、ALT、その他に対応します。
例えば以下のようにイメージを設定します。
生成されるHTMLは以下のようになります。
<img src="r/apexdev/105/files/static/v10/fujisan-region.jpg" alt="" loading="lazy" />
以上になります。
Oracle APEXのアプリケーション作成の参考になれば幸いです。
完