メニューを作成した後, SMG$SELECT_FROM_MENU ルーチンを使用してそのメニューから項目を選択できます。 1 つのメニュー項目から別のメニュー項目に移動すると,省略時の設定では,現在選択されている項目が反転表示されます。 SMG$SELECT_FROM_MENU ルーチンを呼び出したときに,省略時の選択項目を指定できます。省略時の選択項目を指定しなかった場合には,前に選択した項目が強調表示されたままになります。
SMG$SELECT_FROM_MENU ルーチンには,3 種類の操作モードがあります。これらのモードは flags 引数を使用して切り換えることができます。各モードについては,この後の項で説明します。
2.2.11.3.1 省略時のモード
SMG$SELECT_FROM_MENU ルーチンの省略時の操作モードは,
flags 引数を省略することにより有効になります。このモードでは,矢印キーを使用して各メニュー項目間を移動でき,項目を選択した後,別の項目を追加選択できます。また,省略時のモードでは,すでに選択されている項目を "再選択" できます。
2.2.11.3.2 RETURN_IMMED モード
SMG$SELECT_FROM_MENU ルーチンの flags 引数の値として, SMG$M_RETURN_IMMEDを指定した場合には,矢印キーを使用してメニュー項目間を移動できます。しかし,他のキーを押すと,制御はユーザに戻されます。 [Ctrl/Z] は現在の項目を選択し,SMG$_EOF を戻します。他のキーを押した場合には,現在の項目が選択されます。
省略時のモードが提供するキー定義以外のキー定義が必要な場合には, SMG$M_RETURN_IMMED モードを使用します。