English help on website



menu文(Ver9.34対応版)
目次− menu文
menu文はポップアップメニューを表示します。
menu "項目A","項目B","項目C";
パラメータ1〜(文字列型)
メニュー項目に表示される文字列を指定します。
項目の数だけ複数指定できます。

結果コード
メニューを選択した場合、resultは1から数えた項目の値になります。
選択しなかった場合、resultは0になります。


文字カーソルの近くにメニューを表示します。
menu "項目A", "項目B", "項目C";
if( result == 0 ) {
   endmacro;
} else if( result == 1 ) {
    message "Aが選ばれました。";
} else if( result == 2 ) {
    message "Bが選ばれました。";
} else if( result == 3 ) {
    message "Cが選ばれました。";
}
マウスカーソルの近くにメニューを表示するにはmousemenu文を使います。
iskeydownで、例えばCtrl+何かのキーに割り当てられた実行かどうかで処理を分ける方法があります。
if(iskeydown(0x11)){ //Ctrlが押されている
  menu "項目A", "項目B", "項目C";
} else {
  mousemenu "項目A", "項目B", "項目C";
}

配列で指定する方式のmenuarray文もあります。

セパレータにする場合は、"\x01"という文字列を指定します。(V8.00以降)

サブメニューにする場合は、"\x01"に続いてサブメニューのメニュー名を記述します。(V8.85以降)
その後の項目はサブメニュー内の項目として解釈されます。""を指定すると、サブメニューの終了を意味します。
menu
  "\x01サブメニューA",
  "項目A-1",
  "項目A-2",
  "",
  "\x01サブメニューB",
  "項目B-1",
  "項目B-2",
  "",
  "項目C";
message str(result);
参考:
setmenudelay