![]()
入力完了時の項目のカーソル状態を参照します。ディスプレイ機能でだけ有効な機能です。
CSRNOTICE(項目のカーソル位置通知)を指定したときに有効です。
PSCHAR PSFUNCTION ps_get_item_cursor(
PSPUCHAR field);
field | : | 項目のカーソル状態を参照する項目を指定します。 |
項目名"R001"のカーソルの有無を確認します。
PSFILE psfile;
SAMPLE samp;
PSUSHORT Error;
PSCHAR status;
psfile = ps_open("DSPFILE",PS_OPEN_DSP,&Error,0);
ps_set_formatsize(psfile,"SAMPLE",s_SAMPLE);
~ レコードデータ領域 samp へのデータ設定 ~
ps_write(psfile,PS_WRITE_NORMAL,"SCREEN",&samp,0);
ps_read(psfile,PS_READ_NOERASE, SCREEN",&samp,0);
if((status = ps_get_item_cursor(samp.R001)) == PS_CURSOR_SETCURSOR) {
~ 項目R001にカーソルがあったときの処理 ~
}入力完了時の項目の項目のカーソル状態が返されます。値とその意味は以下のとおりです。
PS_CURSOR_SETCURSOR | : | 項目にカーソルがあります。 |
PS_CURSOR_NORMAL | : | 項目にカーソルがありません。 |
入力後の項目ごとの特殊レジスタEDIT-CURSORを調査する。
なし
項目名"R001"のカーソルの有無を確認します。
MOVE "SAMP" TO DSP-FORMAT. MOVE " " TO DSP-MODE. MOVE "@ALLF" TO DSP-GROUP. READ ディスプレイファイル. IF EDIT-CURSOR OF R001 = "C" THEN ~ 項目R001にカーソルがあったときの処理 ~ END-IF.
対象項目の特殊レジスタEDIT-CURSORが以下の状態を示します。
"C" | : | 項目にカーソルがあります。 |
" " (半角の空白) | : | 項目にカーソルがありません。 |
当関数を使用する場合、定義体作成時に項目制御部を定義する必要があります。
1つの利用者プログラムでは項目制御部の長さの異なる定義体を混在して使用することはできません。
COBOLの場合、入力処理を行う前に、特殊レジスタEDIT-CURSORを初期化してください。初期化しない場合、前回の設定内容が残り、期待した結果にならない場合があります。