メニュー表示でキーやバーコードリーダからの入力を待機し、何らかの入力があればイベントを返します。

構文

int AM_ExecMenu(
  MENU_HANDLE menu
);

パラメータ

menu
[in] メニューハンドル

戻り値

 次のイベントを返します。
説明
AMENU_CHECK_CHANGED ラジオボタンまたはチェックボックスの値が変化したことを表します。
AMENU_TEXT_CHANGED 入力フィールドの値が変化したことを表します。
AMENU_FOCUS_CHANGED フォーカスが移動したことを表します。
AMENU_BARCODE_READ バーコードを読み取ったことを表します。
読み取ったバーコードデータは、AM_BarcodeBuffer構造体で指定したバッファに格納されます。
AMENU_SPECIAL_KEY AM_Option構造体SpecialKey1SpecialKey2で設定した特殊キー操作が検出されたことを表します。
AMENU_BEGIN_CANDIDATE 入力フィールドで英字シフトモードまたはHEXシフトモードの候補文字表示が開始されたことを表します。
AMENU_UPDATE_CANDIDATE 入力フィールドで英字シフトモードまたはHEXシフトモードの候補文字表示が更新されたことを表します。
AMENU_CALLBACK_BREAK AM_SetIdleCallback関数で登録したコールバック関数がfalseを返したことを表します。
NUM0_KEY [0]キーが押されたことを表します。
NUM1_KEY [1]キーが押されたことを表します。
NUM2_KEY [2]キーが押されたことを表します。
NUM3_KEY [3]キーが押されたことを表します。
NUM4_KEY [4]キーが押されたことを表します。
NUM5_KEY [5]キーが押されたことを表します。
NUM6_KEY [6]キーが押されたことを表します。
NUM7_KEY [7]キーが押されたことを表します。
NUM8_KEY [8]キーが押されたことを表します。
NUM9_KEY [9]キーが押されたことを表します。
SCAN_KEY [SCAN]キーが押されたことを表します。
Q1_KEY [Q1]キーが押されたことを表します。
Q2_KEY [Q2]キーが押されたことを表します。
BS_KEY [BS]キーが押されたことを表します。
CLR_KEY [CLEAR]キーが押されたことを表します。
ENT_KEY [ENT]キーが押されたことを表します。
SHIFT_KEY [SHIFT]キーが押されたことを表します。
DOT_KEY [.]キーが押されたことを表します。
F1_KEY [F1]キーが押されたことを表します。
F2_KEY [F2]キーが押されたことを表します。
F3_KEY [F3]キーが押されたことを表します。

解説

 本関数は、設定に従って次の処理を自動的に行います。
  • フォーカスがあるメニューアイテムにハイライトを表示する。
  • [Q1]キー、[Q2]キーでフォーカスを前後に移動する。
  • チェックボックスがあるメニューアイテムにフォーカスがあるときは、[SCAN]キーでチェックボックスのオン、オフを切り替える
  • ラジオボタンがあるメニューアイテムにフォーカスがあるときは、[SCAN]キーでラジオボタンをオンにする。
  • 入力フィールドにフォーカスがあるときは文字入力の編集制御を行う。
  • バーコードリーダを有効にしているときは、[SCAN]キーでバーコードの読み取りを行う。
  • 何らかの入力があればイベントを返す。
  • 入力が無い場合はIdle関数を呼びながら入力を待機する。

 1回のキー操作で2個のイベントを返すことがあります。例えば、[Q2]キーでフォーカスを移動したときは、先にAMENU_FOCUS_CHANGEDイベントを返し、次にQ2_KEYイベントを返します。
 1個目のイベントを受け取ったときに2個目のイベントをクリアするには、eventパラメータの値を0にしてAM_SetEvent関数を呼び出します。

必要条件

ヘッダファイル:
lib.h
AdvancedMenu.h
ライブラリファイル:
libAdvancedMenu.a
libSTARTUPOPH5000.a

関連事項

最終更新日:2020/10/16