パッケージflash.events
クラスpublic class ContextMenuEvent
継承ContextMenuEvent Inheritance Event Inheritance Object

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ContextMenuEvent オブジェクトは、ユーザーがコンテキストメニューを開いたり操作したりするときに InteractiveObject によって送出されます。次の 2 種類の ContextMenuEvent オブジェクトがあります。

例を表示

関連項目

ContextMenu クラス
ContextMenuItem クラス


パブリックプロパティ
 プロパティ定義元
 Inheritedbubbles : Boolean
[読み取り専用] イベントがバブリングイベントかどうかを示します。
Event
 Inheritedcancelable : Boolean
[読み取り専用] イベントに関連付けられた動作を回避できるかどうかを示します。
Event
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
  contextMenuOwner : InteractiveObject
メニューが関連付けられている表示リストオブジェクトです。
ContextMenuEvent
 InheritedcurrentTarget : Object
[読み取り専用] イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
Event
 InheritedeventPhase : uint
[読み取り専用] イベントフローの現在の段階です。
Event
  isMouseTargetInaccessible : Boolean
mouseTarget プロパティがセキュリティ上の理由で null に設定されているかどうかを示します。
ContextMenuEvent
  mouseTarget : InteractiveObject
ユーザーがコンテキストメニューを表示するために右クリックした表示リストオブジェクトです。
ContextMenuEvent
 Inheritedprototype : Object
[静的] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
 Inheritedtarget : Object
[読み取り専用] イベントターゲットです。
Event
 Inheritedtype : String
[読み取り専用] イベントのタイプです。
Event
パブリックメソッド
 メソッド定義元
  
ContextMenuEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, mouseTarget:InteractiveObject = null, contextMenuOwner:InteractiveObject = null)
メニューイベントに関する特定の情報を含む Event オブジェクトを作成します。
ContextMenuEvent
  
[override] ContextMenuEvent オブジェクトのコピーを作成して、各プロパティの値を元のプロパティの値と一致するように設定します。
ContextMenuEvent
 Inherited
formatToString(className:String, ... arguments):String
カスタム ActionScript 3.0 Event クラスに toString() メソッドを実装するためのユーティリティ関数です。
Event
 Inherited
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 Inherited
イベントで preventDefault() メソッドが呼び出されたかどうかを確認します。
Event
 Inherited
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
 Inherited
イベントのデフォルト動作をキャンセルできる場合に、その動作をキャンセルします。
Event
 Inherited
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
イベントフローの現在のノードおよび後続するノードで、イベントリスナーが処理されないようにします。
Event
 Inherited
イベントフローの現在のノードに後続するノードで、イベントリスナーが処理されないようにします。
Event
  
[override] ContextMenuEvent オブジェクトのすべてのプロパティを含むストリングを返します。
ContextMenuEvent
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
パブリック定数
 定数定義元
 InheritedACTIVATE : String = "activate"
[静的] ACTIVATE 定数は、type プロパティ(activate イベントオブジェクト)の値を定義します。
Event
 InheritedADDED : String = "added"
[静的] Event.ADDED 定数は、added イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedADDED_TO_STAGE : String = "addedToStage"
[静的] Event.ADDED_TO_STAGE 定数は、type プロパティ (addedToStage イベントオブジェクト) の値を定義します。
Event
 InheritedCANCEL : String = "cancel"
[静的] Event.CANCEL 定数は、cancel イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedCHANGE : String = "change"
[静的] Event.CHANGE 定数は、type プロパティ (change イベントオブジェクト) の値を定義します。
Event
 InheritedCLEAR : String = "clear"
[静的] Event.CLEAR 定数は、clear イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedCLOSE : String = "close"
[静的] Event.CLOSE 定数は、close イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedAIR-only CLOSING : String = "closing"
[静的] Event.CLOSING 定数は、closing イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedCOMPLETE : String = "complete"
[静的] Event.COMPLETE 定数は、complete イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedCONNECT : String = "connect"
[静的] Event.CONNECT 定数は、connect イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedCOPY : String = "copy"
[静的] copy イベントオブジェクトの type プロパティ値を定義します。
Event
 InheritedCUT : String = "cut"
[静的] cut イベントオブジェクトの type プロパティ値を定義します。
Event
 InheritedDEACTIVATE : String = "deactivate"
[静的] Event.DEACTIVATE 定数は、deactivate イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedDISPLAYING : String = "displaying"
[静的] Event.DISPLAYING 定数は、displaying イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedENTER_FRAME : String = "enterFrame"
[静的] Event.ENTER_FRAME 定数は、enterFrame イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedEXIT_FRAME : String = "exitFrame"
[静的] Event.EXIT_FRAME 定数は、exitFrame イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedAIR-only EXITING : String = "exiting"
[静的] Event.EXITING 定数は、type プロパティ (exiting イベントオブジェクト) の値を定義します。
Event
 InheritedFRAME_CONSTRUCTED : String = "frameConstructed"
[静的] Event.FRAME_CONSTRUCTED 定数は、frameConstructed イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedFULLSCREEN : String = "fullScreen"
[静的] Event.FULL_SCREEN 定数は、fullScreen イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedAIR-only HTML_BOUNDS_CHANGE : String = "htmlBoundsChange"
[静的] Event.HTML_BOUNDS_CHANGE 定数は、htmlBoundsChange イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedAIR-only HTML_DOM_INITIALIZE : String = "htmlDOMInitialize"
[静的] Event.HTML_DOM_INITIALIZE 定数は、htmlDOMInitialize イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedAIR-only HTML_RENDER : String = "htmlRender"
[静的] Event.HTML_RENDER 定数は、htmlRender イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedID3 : String = "id3"
[静的] Event.ID3 定数は、id3 イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedINIT : String = "init"
[静的] Event.INIT 定数は、init イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedAIR-only LOCATION_CHANGE : String = "locationChange"
[静的] Event.LOCATION_CHANGE 定数は、locationChange イベントオブジェクトの type プロパティの値を定義します。
Event
  MENU_ITEM_SELECT : String = "menuItemSelect"
[静的] menuItemSelect イベントオブジェクトの type プロパティ値を定義します。
ContextMenuEvent
  MENU_SELECT : String = "menuSelect"
[静的] menuSelect イベントオブジェクトの type プロパティ値を定義します。
ContextMenuEvent
 InheritedMOUSE_LEAVE : String = "mouseLeave"
[静的] Event.MOUSE_LEAVE 定数は、mouseLeave イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedAIR-only NETWORK_CHANGE : String = "networkChange"
[静的] Event.NETWORK_CHANGE 定数は、networkChange イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedOPEN : String = "open"
[静的] Event.OPEN 定数は、open イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedPASTE : String = "paste"
[静的] Event.PASTE 定数は、paste イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedREMOVED : String = "removed"
[静的] Event.REMOVED 定数は、removed イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedREMOVED_FROM_STAGE : String = "removedFromStage"
[静的] Event.REMOVED_FROM_STAGE 定数は、removedFromStage イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedRENDER : String = "render"
[静的] Event.RENDER 定数は、render イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedRESIZE : String = "resize"
[静的] Event.RESIZE 定数は、resize イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedSCROLL : String = "scroll"
[静的] Event.SCROLL 定数は、scroll イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedSELECT : String = "select"
[静的] Event.SELECT 定数は、select イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedSELECT_ALL : String = "selectAll"
[静的] Event.SELECT_ALL 定数は、selectAll イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedSOUND_COMPLETE : String = "soundComplete"
[静的] Event.SOUND_COMPLETE 定数は、soundComplete イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedTAB_CHILDREN_CHANGE : String = "tabChildrenChange"
[静的] Event.TAB_CHILDREN_CHANGE 定数は、tabChildrenChange イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedTAB_ENABLED_CHANGE : String = "tabEnabledChange"
[静的] Event.TAB_ENABLED_CHANGE 定数は、tabEnabledChange イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedTAB_INDEX_CHANGE : String = "tabIndexChange"
[静的] Event.TAB_INDEX_CHANGE 定数は、tabIndexChange イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedUNLOAD : String = "unload"
[静的] Event.UNLOAD 定数は、unload イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedAIR-only USER_IDLE : String = "userIdle"
[静的] Event.USER_IDLE 定数は、userIdle イベントオブジェクトの type プロパティの値を定義します。
Event
 InheritedAIR-only USER_PRESENT : String = "userPresent"
[静的] Event.USER_PRESENT 定数は、userPresent イベントオブジェクトの type プロパティの値を定義します。
Event
プロパティの詳細
contextMenuOwnerプロパティ
contextMenuOwner:InteractiveObject

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

メニューが関連付けられている表示リストオブジェクトです。これは、マウスターゲット(mouseTarget)、または表示リストの祖先のいずれかになります。



実装
    public function get contextMenuOwner():InteractiveObject
    public function set contextMenuOwner(value:InteractiveObject):void
isMouseTargetInaccessibleプロパティ 
isMouseTargetInaccessible:Boolean

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 10

mouseTarget プロパティがセキュリティ上の理由で null に設定されているかどうかを示します。menuTarget の公称値が別のセキュリティサンドボックスにある DisplayObject への参照である場合、このサンドボックスの境界をまたいで両方向に権限がある場合を除いては、menuTargetnull に設定されます。権限を確立するには、SWF ファイルから Security.allowDomain() を呼び出すか、イメージファイルのサーバーからポリシーファイルを提供し、LoaderContext.checkPolicyFile フラグを設定してイメージを読み込みます。



実装
    public function get isMouseTargetInaccessible():Boolean
    public function set isMouseTargetInaccessible(value:Boolean):void

関連項目

mouseTargetプロパティ 
mouseTarget:InteractiveObject

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ユーザーがコンテキストメニューを表示するために右クリックした表示リストオブジェクトです。これは、メニューが関連付けられている表示リストオブジェクト (contextMenuOwner)、またはその表示リストの子孫のいずれかになります。

このプロパティの値は、マウスターゲットがない場合 (例えばマウスが背景上にある場合)、またはマウスターゲットはあるがアクセスできないセキュリティサンドボックスの中にある場合の 2 つの状況の場合に、null になる可能性があります。isMouseTargetInaccessible() プロパティを使用して、どの理由が適用されるかを判別します。



実装
    public function get mouseTarget():InteractiveObject
    public function set mouseTarget(value:InteractiveObject):void

関連項目

コンストラクタの詳細
ContextMenuEvent()コンストラクタ
public function ContextMenuEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, mouseTarget:InteractiveObject = null, contextMenuOwner:InteractiveObject = null)

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

メニューイベントに関する特定の情報を含む Event オブジェクトを作成します。イベントリスナーには Event オブジェクトがパラメータとして渡されます。

パラメータ
type:String — イベントのタイプです。有効な値は次のとおりです。
  • ContextMenuEvent.MENU_ITEM_SELECT
  • ContextMenuEvent.MENU_SELECT
 
bubbles:Boolean (default = false) — Event オブジェクトがイベントフローのバブリング段階で処理されるかどうかを判断します。イベントリスナーは、継承された bubbles プロパティを通じてこの情報にアクセスできます。
 
cancelable:Boolean (default = false) — Event オブジェクトがキャンセル可能かどうかを判断します。イベントリスナーは、継承された cancelable プロパティを通じてこの情報にアクセスできます。
 
mouseTarget:InteractiveObject (default = null) — ユーザーがコンテキストメニューを表示するために右クリックした表示リストオブジェクトです。これは、contextMenuOwner、またはその表示リストの子孫のいずれかになります。
 
contextMenuOwner:InteractiveObject (default = null) — メニューが関連付けられている表示リストオブジェクトです。これは、mouseTarget、またはその表示リストの祖先のいずれかになります。

関連項目

メソッドの詳細
clone()メソッド
override public function clone():Event

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ContextMenuEvent オブジェクトのコピーを作成して、各プロパティの値を元のプロパティの値と一致するように設定します。

戻り値
Event — 元のオブジェクトと同じプロパティ値を含む新しい ContextMenuEvent オブジェクトです。
toString()メソッド 
override public function toString():String

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ContextMenuEvent オブジェクトのすべてのプロパティを含むストリングを返します。ストリングは次の形式です。

[ContextMenuEvent type=value bubbles=value cancelable=value ... contextMenuOwner=value]

戻り値
String — ContextMenuEvent オブジェクトのすべてのプロパティを含むストリングです。
定数の詳細
MENU_ITEM_SELECT定数
public static const MENU_ITEM_SELECT:String = "menuItemSelect"

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

type プロパティ (menuItemSelect イベントオブジェクト) の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
contextMenuOwnerメニューが関連付けられている表示リストオブジェクトです。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
mouseTargetユーザーがコンテキストメニューを表示するために右クリックした表示リストオブジェクトです。
target選択された ContextMenuItem オブジェクトです。target は、必ずしもイベントリスナーを登録した表示リスト内のオブジェクトとは限りません。現在イベントを処理している表示リスト内のオブジェクトにアクセスするには、currentTarget プロパティを使用します。

関連項目

MENU_SELECT定数 
public static const MENU_SELECT:String = "menuSelect"

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

type プロパティ (menuSelect イベントオブジェクト) の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
contextMenuOwnerメニューが関連付けられている表示リストオブジェクトです。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
mouseTargetユーザーがコンテキストメニューを表示するために右クリックした表示リストオブジェクトです。
target表示される ContextMenu オブジェクトです。target は、必ずしもイベントリスナーを登録した表示リスト内のオブジェクトとは限りません。現在イベントを処理している表示リスト内のオブジェクトにアクセスするには、currentTarget プロパティを使用します。

関連項目

例の使用法
ContextMenuEventExample.as

次の例では、ContextMenuEventExample クラスを使用して、デフォルトのコンテキストメニューアイテムをステージから削除し、ステージ上の四角形の色を変更する新しいメニューアイテムを追加します。この例では、次の処理を実行します。
  1. myContextMenu プロパティが宣言され、新しい ContextMenu オブジェクトに割り当てられ、Sprite 型の redRectangle プロパティが宣言されます。
  2. removeDefaultItems() メソッドが呼び出されます。このメソッドによって、すべてのビルトインコンテキストメニューアイテムが削除されます。ただし、プリントを除きます。
  3. addCustomMenuItems() メソッドが呼び出されます。このメソッドによって、Reverse Colors メニューアイテムが defaultItems 配列に配置されます。このとき、配列の push() メソッドが使用されます。menuItemSelect イベントリスナーが ContextMenuItem オブジェクトに追加されます。関連付けられるメソッドは menuItemSelectHandler() () という名前です。 このメソッドは、ユーザーがコンテキストメニューから「色の反転」を選択すると必ず trace() ステートメントを出力します。また、赤い四角形は黒に変わり、黒のテキストは赤に変わります。
  4. コンストラクタに戻り、menuSelect イベントリスナーが、関連するメソッド menuSelectHandler() と共に追加されます。このメソッドは、コンテキストメニューのアイテムが選択されるたびに 3 つの trace() ステートメントを出力します。
  5. コンストラクタは addChildren() を呼び出します。これは、赤色の四角形を描画し、その四角形を表示リストに追加します。この四角形は、表示リストにすぐに表示されます。
  6. 最後に、myContextMenuredRectangle プロパティのコンテキストメニューに割り当てられます。このため、カスタムコンテキストメニューが表示されるのは、マウスポインタが四角形の上にある場合のみです。
package {
    import flash.ui.ContextMenu;
    import flash.ui.ContextMenuItem;
    import flash.ui.ContextMenuBuiltInItems;
    import flash.events.ContextMenuEvent;
    import flash.display.Sprite;
    import flash.display.Shape;
    import flash.text.TextField;

    public class ContextMenuEventExample extends Sprite {
        private var myContextMenu:ContextMenu;
        private var menuLabel:String = "Reverse Colors";
        private var textLabel:String = "Right Click";
        private var redRectangle:Sprite;
        private var label:TextField;
        private var size:uint = 100;
        private var black:uint = 0x000000;
        private var red:uint = 0xFF0000;

        public function ContextMenuEventExample() {
            myContextMenu = new ContextMenu();
            removeDefaultItems();
            addCustomMenuItems();
            myContextMenu.addEventListener(ContextMenuEvent.MENU_SELECT, menuSelectHandler);

            addChildren();
            redRectangle.contextMenu = myContextMenu;
        }

        private function addChildren():void {
            redRectangle = new Sprite();
            redRectangle.graphics.beginFill(red);
            redRectangle.graphics.drawRect(0, 0, size, size);
            addChild(redRectangle);
            redRectangle.x = size;
            redRectangle.y = size;
            label = createLabel();
            redRectangle.addChild(label);
        }

        private function removeDefaultItems():void {
            myContextMenu.hideBuiltInItems();
            var defaultItems:ContextMenuBuiltInItems = myContextMenu.builtInItems;
            defaultItems.print = true;
        }

        private function addCustomMenuItems():void {
            var item:ContextMenuItem = new ContextMenuItem(menuLabel);
            myContextMenu.customItems.push(item);
            item.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, menuItemSelectHandler);
        }

        private function menuSelectHandler(event:ContextMenuEvent):void {
            trace("menuSelectHandler: " + event);
        }

        private function menuItemSelectHandler(event:ContextMenuEvent):void {
            trace("menuItemSelectHandler: " + event);
            var textColor:uint = (label.textColor == black) ? red : black;
            var bgColor:uint = (label.textColor == black) ? black : red;
            redRectangle.graphics.clear();
            redRectangle.graphics.beginFill(bgColor);
            redRectangle.graphics.drawRect(0, 0, size, size);
            label.textColor = textColor;
        }

        private function createLabel():TextField {
            var txtField:TextField = new TextField();
            txtField.text = textLabel;
            return txtField;
        }
    }
}




 

 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flex/3_jp/langref/flash/events/ContextMenuEvent.html