8.2.6 GENEVN01パターンを使用したGUI画面でのイベント単位のデータ入力
(1) 処理の概要
GUI画面を表示します。ファンクションキーなどで画面を確定したタイミングでAPに制御を返すのではなく,オブジェクト単位でAPに制御を返しデータの処理をします。入力画面上では,入力または選択の制限を指定しているオブジェクト以外は,すべて入力・選択できる状態になります。
イベント単位入力画面でのデータ入力処理の概要を次の図に示します。
図8-6 イベント単位入力画面でのデータ入力処理
![[図データ]](figure/zu070630.gif)
(2) 画面定義上のポイント
作成するGUI画面の基になる定義サンプルを次に示します。
定義サンプルを使用しない場合は,レイアウトパターンの「フリー」を選んで定義してください。
イベント単位入力画面の作成時には,次の注意が必要です。
- 画面属性ダイアログの「入力単位」で「イベント」を指定する。
(3) AP作成上のポイント
作成するAPの基になるAPパターンを次に示します。
- メインプログラムで使用するAPパターン名:GENEVN01
このAPパターンを使用してのAP作成時には次の注意が必要です。
- イベントごとの処理のセクションを作成する。
- 画面表示および入力のあと,画面からAPに返されたイベント通知コードを判定する処理を作成する。入力または選択可能なオブジェクトから返されるイベント通知コードには,イベント定数が格納される。
(4) コーディング例
この例題のソースプログラムを'EVENTGC.cbl'として標準提供しています。ソースプログラムからコーディング上のポイントを抜粋して次に示します。
![[図データ]](figure/zu070640.gif)
![[図データ]](figure/zu070641.gif)
- マップ名を変更する。
プログラム中の'@@@EEE'を'EVE1GC'に変更します。
- 画面の表示,およびデータ入力。
- 入力または選択可能なオブジェクトからイベントが返ると,通知コードとして,そのオブジェクトのイベント定数が格納される。
- ボタンやファンクションキーからイベントが返ると,通知コードとして,そのボタンやファンクションキーに対応するINC定数が格納される。
- イベントを返したオブジェクトに対する処理をする。