画面・帳票サポートシステム XMAP3 プログラミングガイド


16.2.3 入力カーソル制御

〈この項の構成〉

(1) 入力カーソル項目の定義

行列(2進)カーソルの標準値
  • 入力カーソル項目データ名:(行)マップ名-INCURSN,(列)マップ名-INCURSM

  • 長さ:4

データ名は,ドローセットアップの「カーソルとフォーカス」で変更できます。

行列(10進)カーソルの標準値
  • 入力カーソル項目データ名:(行)マップ名-INCURSY,(列)マップ名-INCURSX

  • 長さ:8

データ名は,ドローセットアップの「カーソルとフォーカス」で変更できます。

論理カーソルの標準値
  • 論理カーソル項目データ名:マップ名-INCURS-LOCI

  • 長さ:2

データ名は,ドローセットアップの「カーソルとフォーカス」で変更できます。

(2) 論理マップ生成規則とマッピング規則

入力カーソル制御の論理マップ生成例とマッピング規則について説明します。GUI画面のフォーカス・カーソル制御については,「16.3.8 フォーカス・カーソル位置」を参照してください。

(a) 行列(2進)カーソルを指定した場合

COBOL
・Windowsリトルエンディアン用
{02|03} マップ名-INCURSN PIC S9(4) COMP-5.
{02|03} マップ名-INCURSM PIC S9(4) COMP-5.
・Windowsビッグエンディアン用,UNIX用
{02|03} マップ名-INCURSN PIC S9(4) COMP.
{02|03} マップ名-INCURSM PIC S9(4) COMP.
C言語
unsigned char マップ名_INCURSN[2];
unsigned char マップ名_INCURSM[2];

(b) 行列(10進)カーソルを指定した場合

COBOL
{02|03} マップ名-INCURSY PIC 9(4).
{02|03} マップ名-INCURSX PIC 9(4).

C言語では,行列(2進)カーソルに変換されます。

(c) 論理カーソルを指定した場合

論理カーソル定数については,「16.5.1(2)(b) カーソル定数の出力の指定」を参照してください。

COBOL
03 マップ名-INCURS-LOCI PIC X(2).
C言語
unsigned char マップ名_INCURS_LOCI[2];

(3) マッピング規則

入力カーソル制御のマッピング規則について説明します。

(a) 行列(2進)カーソルを指定した場合

APのカーソル項目データ名の領域に代入される内容

画面送信時の入力カーソル位置(行/列位置)が行,列それぞれのデータ名に代入されます。

(b) 行列(10進)カーソルを指定した場合

APのカーソル項目データ名の領域に代入される内容

画面送信時の入力カーソル位置(行/列位置)が行,列それぞれのデータ名に代入されます。

(c) 論理カーソルを指定した場合

APのカーソル項目データ名の領域に代入される内容

入力操作

結果

画面送信時のカーソル位置が入力・入出力フィールド内に収まっていない。

(00)16を代入する。

画面送信時のカーソル位置が入力・入出力フィールド内に収まっている。

該当するフィールドに対応する論理カーソル定数を代入する。

入力単位が「フィールド単位」または「イベント単位」の場合,キー操作をしたオブジェクトのカーソル定数を代入します。