Menu selected

4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次

version 11 (Modified)


Menu selected {(subMenu)} 数値

引数説明
subMenuMenuRef選択された項目を含むメニューの参照
戻り値数値選択されたメニューコマンド
上位バイトにメニュー番号
下位バイトにメニュー項目番号

説明

Menu selected はフォームが表示されているときのみ使用できます。このコマンドは、メニューから選択されたメニュー項目を検出し、階層サブメニューの場合はサブメニューの参照を返します。

Tip: 可能な限り、Menu selectedを使用しないで、(負のメニューバー番号を用いた) 関連メニューバーのメニューに割り当てられたメソッドを使用してください。いずれのメニューが選択されたかを調べる必要がないため、関連メニューバーはより簡単に管理できます。

Menu selected コマンドを階層サブメニューに対して使用できます。第一レベルより下の階層のメニュー項目を選択すると、コマンドはsubMenu 引数に、選択された項目が属するサブメニューの参照 (MenuRef 型, 16文字の文字列) を返します。メニューコマンドが階層サブメニューを含まない場合、この引数には空の文字列が返されます。

Menu selected コマンドは、選択されたメニューの番号を倍長整数型で返します。選択されたメニュー番号を知るためには、返された数値を65536で割り、その結果を整数型に変換します。選択されたメニューコマンド番号を知るには、係数65536を使い、返された数値のモジューロを計算します。メニュー番号とメニューコマンド番号を計算するには以下のフォーミュラを使用します:

   menu := Menu selected \ 65536 
   menuCommand := Menu selected % 65536

ビットワイズ演算子を使用してこれらの値を取得することもできます:

   menu := (Menu selected & 0xFFFF0000) >> 16
   menuCommand := Menu selected & 0xFFFF

メニューが選択されていない場合、Menu selectedは0を返します。

例題

以下の例はSET MENU ITEM MARKコマンドのメニューとメニュー項目引数を求めるためにMenu selectedを使用しています:

   Case of 
      : (Form event=On Menu Selected) 
      C_STRING(16;$refMenuIncludingItem)
      C_LONGINT($ref;$MenuNum;$MenuItemNum)
      $ref:= Menu selected($refMenuIncludingItem)
      $MenuNum:=$ref\65536
      $MenuItemNum:=$ref%65536
      SET MENU ITEM MARK ($refMenuIncludingItem; $MenuItemNum;Char(18)) 
   End case

Note: 項目が選択されていなければ、On Menu Selectedフォームイベントは有効にされません。メニューが、メニューバー中のメニューの一つでない場合、$refMenuIncludingItemには常に値が与えられ、$MenuNumは0となります。

参照

メニューの管理.


4D - Documentation   French   English   German   Spanish   日本語   4D v11 SQLコマンドテーマリスト   4D v11 SQLインデックス   4D v11 SQL定数テーマリスト   戻る   前   次