0

除了停止从 javascript 右键单击​​之外,是否有任何解决方法可以在 flex 上下文菜单中创建子菜单。

问候,


嗨弗兰克,

是的,我想在上下文菜单中创建子菜单。你能帮我吗?

问候,


嗨弗兰克,

我需要应用程序的上下文菜单而不是数据网格。

在我最初的问题中,“除了停止从 javascript 右键单击​​之外”这句话的意思是

“在 html 中点击右键,调用 javascript 函数并通过 js 调用 as 函数。”

您指定的项目执行上述过程。我不想用这个

程序。有没有其他方法可以在弹性上下文菜单中实现子菜单。您可以...吗

请告诉我如果是这样..

问候, 阿文德

4

1 回答 1

0

就在这里。

我不知道,你到底是什么意思:

除了停止从 javascript 右键单击​​。

但是,如果您想在子菜单中创建一个条目,请执行以下操作:

//Instance of my own class
private var myContext:myContextMenu = new myContextMenu();
application.contextMenu = myContext.myContextMenu;

//Here is the Class:
package com.my.components
{
    /* ////////////////////////////////////////////
    ///// My Context Menü /////////////////////
    ///////////////////////////////////////////////

    /////////////////////////////////////////////////////////////////////////////////
    //to use:                                                                      //
    // private var myContext:MyContextMenu = new MyContextMenu();                  //
    // init() in creationComplete                                                  //
    // application.contextMenu = myContext.myContextMenu;                          //
    ////////////////////////////////////////////////////////////////////////////// */


    import flash.display.Sprite;
    import flash.events.ContextMenuEvent;
    import flash.net.URLRequest;
    import flash.net.navigateToURL;
    import flash.text.TextField;
    import flash.ui.ContextMenu;
    import flash.ui.ContextMenuBuiltInItems;
    import flash.ui.ContextMenuItem;

    public class MyContextMenu extends Sprite
    {

        public var myContextMenu:ContextMenu;
        private var menuLabel:String = String.fromCharCode(169)+" My Company GmbH";

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

            super();
        }

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

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

        private function menuSelectHandler(event:ContextMenuEvent):void
        {
        }

        private function menuItemSelectHandler(event:ContextMenuEvent):void
        {
            navigateToURL(new URLRequest('http://www.my-company.de'));
        }

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

玩得开心

编辑:这里 有一个有趣的项目。他们在 html 中捕获右键,调用 javascript 函数并通过 js 调用 as 函数。

不幸的是,FP 或 NativeMenu APi 的限制只允许在级别上下文菜单上。在这里阅读

坦率

于 2011-02-02T10:14:10.740 回答