Get menu item key
Get menu item key ( menu ; menuItem {; process} ) : Integer
引数 | 型 | 説明 | |
---|---|---|---|
menu | Integer, Text | → | メニュー参照またはメニュー番号 |
menuItem | Integer | → | メニュー項目番号 または -1: 最後に追加された項目 |
process | Integer | → | プロセス番号 |
戻り値 | Integer | ← | メニュー項目に関連付ける 標準ショートカットキーの文字コード |
このコマンドはスレッドセーフではないため、プリエンプティブなコードには使えません。
説明
Get menu item key コマンドは、menu引数にメニュー番号またはメニュー参照で指定したメニュー中、menuItem引数にメニュー項目番号で指定したメニュー項目の、Ctrl (Windows) または Command (Macintosh) ショートカットコードを返します。menuItemに-1を渡してmenuに最後に追加された項目を指定することもできます。
process引数を省略すると、Get menu item keyコマンドはカレントプロセスのメニューバーに適用されます。そうでなければ、processに渡されたプロセス参照番号のプロセスのメニューに適用されます。
Note: menuにMenuRefを渡した場合、process 引数は意味を持たず、無視されます。
メニュー項目に割り当てられたショートカットがないか、menuItem 引数が階層サブメニューを指す場合、Get menu item key は 0 を返します。
例題
メニュー項目に割り当てられたショートカットを取得するために、以下のようなタイプのプログラミング構造を実装すると便利です:
If(Get menu item key(mymenu;1)#0)
$modifiers:=Get menu item modifiers(mymenu;1)
Case of
:($modifiers=Option key mask)
...
:($modifiers=Shift key mask)
...
:($modifiers=Option key mask+Shift key mask)
...
End case
End if