Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

[ Image Added |../../index.htm#lansa/if_key_c.htm]
現在地:

Anchor
_Ref428888595
_Ref428888595
Anchor
_

...

Toc139468713
_

...

Toc139468713
7.71.2 IF_KEY についてのコメント/警告

  • IF_KEYコマンドは、必ず、ワークステーションを使用するDISPLAY、REQUEST、POP_UP、BROWSEなどのコマンドの実行後に使用してください。ワークステーションとの対話を行う前にIF_KEYコマンドを使用すると、予期しない結果になります。
  • Wiki Markup
    値*PROMPTを指定すると、\[プロンプト\]キーが使用されたかどうかを検査することができます。ただし、多くのRDMLプログラムでは、関連するパラメータがPROMPT_KEY(*YES *AUTO)としてコーディングされているため、\[プロンプト\]キーの処理は自動的に実行されます。\[プロンプト\]キーが自動的に処理されないようにするには、PROMPT_KEY(*YES *NEXT)またはPROMPT_KEY(*YES L10)をコーディングします(L10はコマンド・ラベルです)。この場合、\[プロンプト\]キーがRDMLプログラムで処理されるものと見なされるため、IF_KEYコマンドでその使用を検査できるようになります。
  • 検査値*CANCEL、*EXITHIGH、および*EXITLOWは、SAA/CUAファンクション・キーの割り当てとの完全な互換性のために用意されています。これらの値をSAA/CUA以外のアプリケーションで使用しないでください。
  • *CANCELは機能的に*MENUと同じです。
  • Wiki Markup
    *EXITHIGHおよび*EXITLOWを検査する場合は、関連付けられたDISPLAY、REQUEST、またはPOP_UPコマンドでEXIT_KEYパラメータによって高位または低位の\[終了\]キーを適切に有効にする必要があります。1つのDISPLAY、REQUEST、またはPOP_UPコマンドで高位および低位の\[終了\]キーを両方有効にすることはできません。
  • LANSAディクショナリには、#IO$KEYという特別なフィールドが保持されています。このフィールドには、ワークステーションとの対話で最後に使用されたファンクション・キーが保管されます。このフィールドは、他のフィールドと同様に、IFまたはCASEステートメント内で検査できます。状況によっては、合成コマンドIF_KEYを使用するよりも、IFまたはCASEコマンドでこのフィールドを使用する方が適している場合もあります。

...

例えば、42個の項目で構成されるブラウズ・リストが表示されている場合(画面の各「ページ」に15個の項目が表示されるものとする)、上スクロール・キーが3回使用されるまでは、上スクロール処理はIBM i オペレーティング・システムによって自動的に処理されます。3回目の使用でユーザーはブラウズ・リストの「端」に達するため、制御がRDMLプログラムに戻されます。下スクロール処理についても同様です。
[ Image Added |../../index.htm#lansa/if_key_c.htm]