メソッド | プロパティ | エフェクト | イベント | スタイル | フレームあり | フレームなし

mx.controls
Menu クラス

継承を示す線継承を示す線継承を示す線継承を示す線継承を示す線


Menu クラス
mx.controls.listclasses.ScrollSelectList の拡張

Menu コントロールは、大部分のソフトウェアアプリケーションに見られる [ファイル] メニューや [編集] メニューのような、個別に選択可能な選択肢を含むポップアップメニューを作成します。開いたメニューは、次のいずれかの理由で閉じられるまで表示されたままになります。

Menu クラスに対応する MXML タグはありません。これはスクリプトを使用して作成する必要があります。

を参照するにはここをクリックしてください

関連項目
    treeclasses.TreeDataProvider
    treeclasses.XMLTreeDataProvider
    mx.managers.PopUpManager
    mx.effects.Tween



コンストラクタ
Menu ( )
コンストラクタです。



メソッド
       addMenuItem( arg:Object) :  Object
メニューアイテムをこのメニューの末尾に追加します。
       addMenuItemAt( index:Number, arg:Object) :  Object
このメニューの指定の位置にアイテムを挿入します。
staticcreateMenu( parent, mdp, initObj)
指定の MenuDataProvider によって表現される Menu インスタンスを返し、そのインスタンスを指定の親コンテナに配置します。
       getMenuItemAt( index:Number) :  Object
このメニューからのアイテムへの参照を取得します。
       getRootMenu( ) :  mx.controls.Menu
任意のメニューから親のメニューチェーンをたどり、ルートメニューを見つけます。
       hide( ) :  Void
メニューが表示されている場合、そのメニューと、表示されているすべてのサブメニューを非表示にします。
       indexOf( item:Object) :  Number
メニュー内のアイテムのインデックスを返します。
staticisItemEnabled( itm:Object) :  Boolean
true の場合、アイテムは有効にされています。
staticisItemSelected( itm:Object) :  Boolean
true の場合、アイテムは選択されています。
       measure( ) :  Void
メニューアイテムを測定してその高さと幅を計算します。
       removeAll( ) :  Object
メニューからすべてのアイテムを削除します。
       removeMenuItem( item:Object) :  Object
メニューから 1 つのアイテムを削除します。
       removeMenuItemAt( index:Number) :  Object
指定された位置にあるアイテムをメニューから削除します。
       setMenuItemEnabled( item:Object, enable:Boolean) :  Void
メニューアイテムに有効または無効とマークを付けます。
       setMenuItemSelected( item:Object, select:Boolean) :  Void
アイテムに選択または非選択とマークを付けます。
       show( x:Number, y:Number) :  Void
メニューが表示されていない場合、メニューの左上隅を指定の座標に配置し、必要に応じてメニューのサイズを変更してから表示します。

mx.controls.listclasses.ScrollSelectList クラスから継承されるメソッド
addItem   addItemAt   calculateWidths   clearSelected   createChildren   draw   fillRowsFromBottom   fillRowsFromTop   getDropLocation   getItemAt   hideDropFeedback   isSelected   layoutChildren   measure   removeAll   removeItemAt   replaceItemAt   setPropertiesAt   showDropFeedback   sortItems   sortItemsBy  

mx.core.ScrollView クラスから継承されるメソッド
childLoaded   createChildren   createChildWithStyles   getViewMetrics   init   layoutChildren   setScrollProperties  

mx.core.View クラスから継承されるメソッド
childLoaded   constructObject2   createChild   createChildren   destroyAllChildren   destroyChild   destroyChildAt   draw   getBorderMetrics   getChildAt   getChildIndex   getViewMetrics   init   layoutChildren   layoutChrome   setChildIndex  

mx.core.UIComponent クラスから継承されるメソッド
drawFocus   getFocus   getFocusManager   setEnabled   setFocus  

mx.core.UIObject クラスから継承されるメソッド
addEventListener   applyProperties   buildDepthTable   commitProperties   constructObject2   createAccessibilityImplementation   createChildAtDepth   createChildren   createClassChildAtDepth   createClassObject   createEmptyObject   destroyObject   dispatchEvent   doLater   draw   drawRect   executeBindings   fillRect   findNextAvailableDepth   getRepeaterItem   getStyle   handleEvent   init   invalidate   invalidateLayout   invalidateProperties   invalidateSize   invalidateStyle   layoutChildren   measure   move   redraw   removeEventListener   setDepthAbove   setDepthBelow   setMask   setSize   setSizeNoLayout   setStyle   swapDepths  



プロパティ
staticversion:String
このクラスのバージョンを表すストリングです。

mx.controls.listclasses.ScrollSelectList クラスから継承されるプロパティ
cellRenderer   dataProvider   dataTipField   dataTipFunction   dragEnabled   dropIndicatorSkin   iconField   iconFunction   labelField   labelFunction   multipleSelection   rowCount   rowHeight   rowRenderer   selectable   selectedIndex   selectedIndices   selectedItem   selectedItems   showDataTips   value   variableRowHeight   verticalAlign   wordWrap  

mx.core.ScrollView クラスから継承されるプロパティ
className   hPosition   hScrollPolicy   liveScrolling   maxHPosition   maxVPosition   scrollTipFunction   showScrollTips   version   vPosition   vScrollPolicy  

mx.core.View クラスから継承されるプロパティ
baselinePosition   className   numChildren   version  

mx.core.UIComponent クラスから継承されるプロパティ
enabled   errorString   tabEnabled   tabIndex   version  

mx.core.UIObject クラスから継承されるプロパティ
alpha   baselinePosition   className   depth   documentDescriptor   height   heightFlex   id   instanceIndices   isDocument   kStretch   layoutHeight   layoutWidth   maxHeight   maxWidth   minHeight   minWidth   mouseX   mouseY   nestLevel   oldHeight   oldWidth   oldX   oldY   parent   parentApplication   parentDocument   percentHeight   percentWidth   preferredHeight   preferredWidth   repeaterIndices   scaleX   scaleY   styleName   tabEnabled   toolTip   version   visible   width   widthFlex   x   y  



エフェクト

mx.core.UIComponent クラスから継承されるエフェクト
focusInEffect   focusOutEffect  

mx.core.UIObject クラスから継承されるエフェクト
creationCompleteEffect   hideEffect   mouseDownEffect   mouseOutEffect   mouseOverEffect   mouseUpEffect   moveEffect   resizeEffect   showEffect  



イベント
changeユーザーが Menu コントロール内のアイテムを選択したときにブロードキャストされます。このイベントオブジェクトには、次のプロパティが含まれます。
- menuBar 選択された Menu コントロールの親である MenuBar インスタンスです。ターゲット Menu コントロールが MenuBar コントロールに属さない場合は、undefined です。
- menu Menu タイプの隠された Menu インスタンスです。
- menuItem 選択されたメニューアイテムです。次の形式でメニューアイテムプロパティにアクセスします。
eventobj.menuItem.attributes.attribName

- groupName アイテムが属するラジオグループの名前です。ターゲットアイテムがラジオグループ内に存在しない場合は undefined です。データ型は String です。
- target イベントをトリガしたコンポーネントへの参照です。
- type イベントの名前である change です。
menuHideメニューまたはサブメニューが閉じたときにブロードキャストされます。このイベントオブジェクトには、次のプロパティが含まれます。
- menuBar 選択された Menu コントロールの親である MenuBar インスタンスです。ターゲット Menu コントロールが MenuBar コントロールに属さない場合は、undefined です。
- menuItem 選択されたメニューアイテムです。次の形式でメニューアイテムプロパティにアクセスします。
eventobj.menuItem.attributes.attribName

- target イベントをトリガしたコンポーネントへの参照です。
- type イベントの名前である menuHide です。
menuShowメニュー全体またはサブメニューが開いたときにブロードキャストされます。このイベントオブジェクトには、次のプロパティが含まれます。
- menuBar 選択された Menu コントロールの親である MenuBar インスタンスです。ターゲット Menu コントロールが MenuBar コントロールに属さない場合は、undefined です。
- menu Menu タイプの Menu インスタンスです。
- menuItem 選択されたメニューアイテムです。次の形式でメニューアイテムプロパティにアクセスします。
eventobj.menuItem.attributes.attribName

- target イベントをトリガしたコンポーネントへの参照です。
- type イベントの名前である menuShow です。
rollOutカーソルが Menu アイテムを離れたときにブロードキャストされます。このイベントオブジェクトには、次のプロパティが含まれます。
- menuItem 選択されたメニューアイテムです。次の形式でメニューアイテムプロパティにアクセスします。
eventobj.menuItem.attributes.attribName

- menu Menu タイプの Menu インスタンスです。
- menuBar 選択された Menu コントロールの親である MenuBar インスタンスです。ターゲット Menu コントロールが MenuBar コントロールに属さない場合は、undefined です。
- target イベントをトリガしたコンポーネントへの参照です。
- type イベントの名前である rollOut です。
rollOverカーソルが Menu アイテム上に移動するとブロードキャストされます。このイベントオブジェクトには、次のプロパティが含まれます。
- menuItem 選択されたメニューアイテムです。次の形式でメニューアイテムプロパティにアクセスします。
eventobj.menuItem.attributes.attribName

- menu Menu タイプの Menu インスタンスです。
- menuBar 選択された Menu コントロールの親である MenuBar インスタンスです。ターゲット Menu コントロールが MenuBar コントロールに属さない場合は、undefined です。
- target イベントをトリガしたコンポーネントへの参照です。
- type イベントの名前である rollOver です。

mx.controls.listclasses.ScrollSelectList クラスから継承されるイベント
change  itemRollOut  itemRollOver 

mx.core.ScrollView クラスから継承されるイベント
scroll 

mx.core.View クラスから継承されるイベント
childCreated  childDestroyed  childIndexChanged 

mx.core.UIComponent クラスから継承されるイベント
focusIn  focusOut  invalid  keyDown  keyUp  valid  valueCommitted 

mx.core.UIObject クラスから継承されるイベント
creationComplete  dragComplete  dragDrop  dragEnter  dragExit  dragOver  draw  effectEnd  effectStart  hide  hideToolTip  initialize  load  mouseChangeSomewhere  mouseDown  mouseDownSomewhere  mouseMove  mouseMoveSomewhere  mouseOut  mouseOver  mouseUp  mouseUpSomewhere  move  resize  show  showToolTip  unload 



スタイル
alternatingRowColors型 : Array   CSS の継承 : あり
切り替えパターンで行を表示する場合に使用する色です。値には、複数の色の配列を指定します。backgroundColor が指定されていない場合にのみ使用します。
popupDuration型 : Number   形式 : Time   CSS の継承 : なし
メニューが開くときのトランジションの時間です (ミリ秒単位)。値 0 はトランジションなしを示します。デフォルト値は 150 です。
rollOverColor型 : Number   形式 : Color   CSS の継承 : あり
マウスポインタが置かれたときのメニューアイテムの背景色です。デフォルト値は 0x0EFFD6 です。
selectionColor型 : Number   形式 : Color   CSS の継承 : あり
選択されたときのメニューアイテムの背景色です。デフォルト値は 0x0DFFC1 です。
selectionDisabledColor型 : Number   形式 : Color   CSS の継承 : あり
デフォルト値は 0xDDDDDD です。
selectionEasing型 : String   CSS の継承 : なし
プログラムによるトゥイーンの制御に使用されるイージング式 (関数) への参照です。
textIndent型 : Number   形式 : Length   CSS の継承 : あり
テキストの 1 行目のコンテナ左端からのオフセットです。デフォルト値は 0 です。
textRollOverColor型 : Number   形式 : Color   CSS の継承 : あり
デフォルト値は 0x02B333C です。
textSelectedColor型 : Number   形式 : Color   CSS の継承 : あり
デフォルト値は 0x005F33 です。

mx.core.UIComponent クラスから継承されるスタイル
backgroundAlpha   backgroundColor   backgroundDisabledColor   backgroundImage   backgroundSize   barColor   borderCapColor   borderColor   borderSides   borderStyle   borderThickness   cornerRadius   disabledColor   dropShadow   errorColor   fillColors   highlightColor   modalTransparency   scrollTrackColor   selectedFillColors   shadowCapColor   shadowColor   shadowDirection   shadowDistance   symbolBackgroundColor   symbolBackgroundDisabledColor   symbolBackgroundPressedColor   symbolColor   symbolDisabledColor   themeColor  

mx.core.UIObject クラスから継承されるスタイル
color   fontFamily   fontSize   fontStyle   fontWeight   horizontalGap   leading   marginLeft   marginRight   textAlign   textDecoration   textIndent   verticalGap  



コンストラクタの詳細

Menu

Menu( )

コンストラクタです。



メソッドの詳細

addMenuItem

addMenuItem( arg:Object) :  Object

メニューアイテムをこのメニューの末尾に追加します。

パラメータ
    arg:Object - 次のいずれかが可能です。String: アイテムのラベルとして使用します。Object: この Object の各プロパティが結果の XMLNode の各属性にコピーされます。XMLNode: 直接使用します。XML インスタンス: インスタンスの firstChild のクローンが作成され使用されます。

戻り値
     メニューアイテムの状態を表す XMLNode を返します。


addMenuItemAt

addMenuItemAt( index:Number, arg:Object) :  Object

このメニューの指定の位置にアイテムを挿入します。

パラメータ
    index:Number - アイテムを挿入する必要のあるインデックスです。インデックス 0 が最初のアイテムです。
    arg:Object - 次のいずれかが可能です。String: アイテムのラベルとして使用します。Object: この Object の各プロパティが結果の XMLNode の各属性にコピーされます。XMLNode: 直接使用します。XML インスタンス: インスタンスの firstChild のクローンが作成され使用されます。

戻り値
     メニューアイテムの状態を表す XMLNode を返します。


createMenu

static  createMenu( parent, mdp, initObj)

指定の MenuDataProvider によって表現される Menu インスタンスを返し、そのインスタンスを特定の親コンテナに配置します。Menu を表示することはなく、単にそのインスタンスを作成するだけです。したがって、必要ならば表示する前に変更を加えることができます。メニューを表示するには Menu.show() メソッドを呼び出します。

パラメータ
    parent - PopUpManager の開始ポイントとして使用する UIObject です。この UIObject が実際にメニューの親にならない場合があります。PopUpManager は、親として使用する最上位の有効な Container を探します。
    mdp - メニューのベースとなる MenuDataProvider です。
    initObj - 設定するプロパティまたは MXML 属性のオブジェクトです。

戻り値
     Menu インスタンスを返します。


getMenuItemAt

getMenuItemAt( index:Number) :  Object

このメニューからのアイテムへの参照を取得します。インデックス 0 が最初のアイテムです。

パラメータ
    index:Number - 取得するアイテムのインデックスです。

戻り値
     XMLNode への参照です。


getRootMenu

getRootMenu( ) :  mx.controls.Menu

任意のメニューから親のメニューチェーンをたどり、ルートメニューを見つけます。


hide

hide( ) :  Void

メニューが表示されている場合、そのメニューと、表示されているすべてのサブメニューを非表示にします。


indexOf

indexOf( item:Object) :  Number

このメニューにおけるアイテムのインデックスを返します。アイテムがこのメニューに属していない場合は、undefined を返します。

パラメータ
    item:Object - ターゲットアイテムです。

戻り値
     アイテムのインデックス、または undefined を返します。


isItemEnabled

static  isItemEnabled( itm:Object) :  Boolean

true の場合、アイテムは有効にされています。階層の深いところにあるアイテムへの参照があるときに便利なメソッドです。それ以外の場合は、最初にメニューにアクセスするには階層をたどる必要があります。

パラメータ
    itm:Object - 状態を決定するアイテムです。


isItemSelected

static  isItemSelected( itm:Object) :  Boolean

true の場合、アイテムは選択されています。アイテムが選択されているのは、チェックアイテムまたはラジオボタンアイテムが選択状態にある場合、またはアイテムがサブメニューを表し、そのサブメニューが表示されている場合、あるいはユーザーがキーボードでメニュー間を移動し、対象のメニューアイテムに移動した場合です。階層の深いところにあるアイテムへの参照があるときに便利なメソッドです。それ以外の場合は、最初にメニューにアクセスするには階層をたどる必要があります。

パラメータ
    itm:Object - 状態を決定するアイテムです。


measure

measure( ) :  Void

メニューアイテムを測定してその高さと幅を計算します。サブメニューの位置やサイズは考慮されません。


removeAll

removeAll( ) :  Object

メニューからすべてのアイテムを削除します。


removeMenuItem

removeMenuItem( item:Object) :  Object

メニューからアイテムを削除します。アイテムがこのメニューに属していない場合は、何も実行せず、undefined を返します。

パラメータ
    item:Object - 削除するアイテムです。

戻り値
     削除された XMLNode への参照を返します。アイテムがこの Menu インスタンスに属していない場合は undefined を返します。


removeMenuItemAt

removeMenuItemAt( index:Number) :  Object

指定された位置にあるアイテムをメニューから削除します。インデックス 0 が最初のアイテムです。指定された位置にアイテムが存在しない場合は、何も実行せず、undefined を返します。

パラメータ
    index:Number - 削除されるアイテムのインデックスです。

戻り値
     削除された XMLNode がある場合、その XMLNode への参照を返します。


setMenuItemEnabled

setMenuItemEnabled( item:Object, enable:Boolean) :  Void

メニューアイテムに有効または無効とマークを付けます。無効にされたメニューは選択できません。

パラメータ
    item:Object - ターゲットアイテムです。
    enable:Boolean - アイテムが有効かどうかを示すブール値です。


setMenuItemSelected

setMenuItemSelected( item:Object, select:Boolean) :  Void

アイテムに選択または非選択とマークを付けます。アイテムはチェックアイテムまたはラジオボタンアイテムである必要があります。それ以外の場合は効果がありません。

パラメータ
    item:Object - ターゲットアイテムです。
    select:Boolean - アイテムが選択されているかどうかを示すブール値です。


show

show( x:Number, y:Number) :  Void

メニューが表示されていない場合、メニューの左上隅を指定の座標に配置し、必要に応じてメニューのサイズを変更してから表示します。show() メソッドの x および y 引数では、コントロールの親アプリケーションを基準とする Menu コントロールの左上隅の相対座標を指定します。必ずしもコントロールの直接の親が基準であるとは限りません。したがって、Menu コントロールが Panel コンテナの内部でネストされている HBox コンテナの中にある場合でも、座標は HBox コンテナからの相対座標ではなく Application コンテナからの相対座標になります。

パラメータ
    x:Number - 左上隅の水平位置です (オプション)。
    y:Number - 左上隅の垂直位置です (オプション)。



プロパティの詳細

version

static  version:String  

このクラスのバージョンを表すストリングです。


SimpleMenuExample.mxml
<?xml version="1.0"?>
<!-- Menu コントロールの使用方法を示す簡単な例 -->
<mx:Application xmlns:mx="http://www.macromedia.com/2003/mxml" backgroundColor="#FFFFFF">

<mx:Script>
<![CDATA[
       
import mx.controls.Menu;
var myMenu:Menu;
   
// Menu オブジェクトは、この関数を使用して作成および表示されます。
function Show()
       {
myMenu= Menu.createMenu(panel,myMenuData);
		   myMenu.x = 300;
		   myMenu.y = 100;
myMenu.show();
var menuEventHandler=new Object();
menuEventHandler.change=function(event)
           {
dispatchEvent({type:event.menuItem.attributes.eventName,target:this});
           }
       
var menuEventDelegate= mx.utils.Delegate.create(this,menuEventHandler);
myMenu.addEventListener("change",menuEventDelegate);

       }
    
      ]]>
</mx:Script>

<mx:XML id="myMenuData">
<menuitem label="MenuItem A">
<menuitem label="SubMenuItem 1-A" eventName="copy"/>
<menuitem label="SubMenuItem 2-A" eventName="paste"/>
</menuitem>
</mx:XML>

<mx:Panel id="panel" title="Menu Panel">
<mx:Button id="mybutton" label="Open Menu-Popup" click="Show()"/>
</mx:Panel>

</mx:Application>