コンソール・ユーザー・インターフェース (ConsoleUI) は、Windows® または UNIX® 画面上においてテキスト・ベース形式でデータを表示するテクノロジーです。このテクノロジーは、EGL 生成の Java™ プログラムでのみ使用可能であり、PageHandler では使用できません。
ConsoleUI により作成したインターフェースは、Windows 2000/NT/XP
または UNIX X-windows 上で、ローカルにも、リモート端末セッションでも表示が可能です。
ConsoleUI は、テキスト・ユーザー・インターフェース (TextUI)
とは明らかに異なり、この 2 つは同じプログラムで動作することはできません。
- TextUI が有効な場合、インターフェースのスタイルは、3270
端末と相互作用するメインフレーム・プログラムで使用されているかのようになります。
プログラムは、テキスト書式を表示しますが、ユーザーが 1
つのフィールドから次のフィールドへ移動する際のユーザー入力を処理しません。ユーザーが書式を実行する (ほとんどの場合、Enter キーを押す) と、書式のすべてのデータはプログラムに戻され、その後でのみプログラムはデータの検証を行います。検証が成功すると、プログラムは次のコード化された文を実行します。
- ConsoleUI が有効な場合、インターフェースのスタイルは、キャラクター端末と相互作用する UNIX
ベースのプログラムで使用されているかのようになります。
このプログラムは、コンソール・フォームを表示します。
また、表示中のカーソルを次のフィールドへ移動させるためにユーザーが
「タブ」キーを押すと、ただちにユーザー・イベントに応答します。
検証はフィールドごとに行われます。
ユーザーが有効なデータをそこに入力するまで、カーソルを現行フィールドに制限できます。
ConsoleUI の使用に際しては、基本的にプログラムを以下のようにコード化します。
- ConsoleUI パーツの基本となる変数のセット (常に利用可能なもの)
を宣言する。
ここで、ConsoleUI 特有のパーツを定義する必要はありません。
- 適切な EGL 関数を呼び出すときに引数として ConsoleUI 変数をインクルードすることで、
書式などのビジュアル・エンティティーを開く。代わりに、実行時に認識される名前を受け取る、displayFormByName
のような EGL 関数を呼び出してビジュアル・エンティティーを開くこともできます。
- 特定のイベント (例えば、ユーザーのキー・ストロークなど)
を特定のロジックに結合することで、ユーザーの相互作用を可能にする、EGL の openUI
文のビジュアル・エンティティーを参照する。
ConsoleUI アプリケーションのユーザーは、任意のキーを押すことによって、スクリーン内の表示
と相互作用できますが、マウス・クリックは効きません。
ConsoleUI は、フィールドへのユーザー入力を受け取りますが、入力フィールドとプリミティブ型の変数間の対応である、
バインディング を指定した場合のみに限られます。EGL ランタイムは、次のように動作します。
- 表示フィールドの初期内容として、変数値を使用します。
- ユーザーがフィールドから移動するとすぐに、ユーザー入力を上記の変数へ移します。
ConsoleUI では、コードが一度に 1 行だけ読み書きする処理モードである
行モード
にあるユーザーと相互作用するも可能です。行モードの含意は、以下のとおりです。
- Eclipse ワークベンチでは、ユーザーは「コンソール」ビューと相互作用します。
- コマンド・プロンプトで呼び出されたプログラムでは、ユーザーはコマンド・ウィンドウと相互作用します。
- UNIX 環境の Curses 下で稼動するプログラムでは、ユーザーは UI が表示されているウィンドウと相互作用しますが、通常のウィンドウ・ベースの相互作用は中断されます。
ConsoleUI は、Informix® 4GL 製品のユーザー・インターフェース・テクノロジーに相当します。