在上下文菜单中创建子菜单

发布于 2024-09-03 07:01:36 字数 153 浏览 0 评论 0 原文

是否可以在 Adob​​e Flex 的上下文菜单(右键菜单)中创建子菜单?

Menu1 >
  - Menu1.1
  - Menu1.2
Menu2 >
  - Menu2.1
  - Menu2.2
  - Menu2.3

Is it possible to create submenu in context menu (right click menu) in Adobe Flex?

Menu1 >
  - Menu1.1
  - Menu1.2
Menu2 >
  - Menu2.1
  - Menu2.2
  - Menu2.3

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

夏九 2024-09-10 07:01:36

不;这是当前的限制之一;我相信Flash Player。

在 Adob​​e AIR 中,您可以使用 NativeMenuItem 类。

No; it is one of the current limitation; I believe of the Flash Player.

In Adobe AIR you can add submenus to the context menu using the submenu property of the NativeMenuItem class.

微凉徒眸意 2024-09-10 07:01:36

在 AIR 应用程序中添加子菜单的简单方法

    <?xml version="1.0" encoding="utf-8"?>
   <s:Panel xmlns:fx="http://ns.adobe.com/mxml/2009" 
         xmlns:s="library://ns.adobe.com/flex/spark" 
         xmlns:mx="library://ns.adobe.com/flex/mx" width="400" height="400"
         creationComplete="panel1_creationCompleteHandler(event)"
         rightClick="panel1_rightClickHandler(event)" title="Context Menu with                         Subitem">

    <fx:Script>
        <![CDATA[
            import mx.controls.Alert
            private var myContextMenu:ContextMenu = new ContextMenu();

            protected function panel1_creationCompleteHandler(event:Event):void
            {
                this.contextMenu = myContextMenu;
            }
            protected function panel1_rightClickHandler(event:MouseEvent):void
            {
                var menuItem1:ContextMenuItem = new ContextMenuItem('Menu 1');
                var menuItem2:ContextMenuItem = new ContextMenuItem('Menu 2');


                myContextMenu.customItems = [menuItem1, menuItem2 ];

                var subMenuItem1:ContextMenuItem = new ContextMenuItem('Sub-  Menu 1');
                    subMenuItem1.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, menuItemClick);

                var subMenuItem2:ContextMenuItem = new ContextMenuItem('Sub-   Menu 2');
                    subMenuItem2.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, menuItemClick2);

                var myContextSubMenu:ContextMenu = new ContextMenu();
                myContextSubMenu.customItems = [subMenuItem1, subMenuItem2];

                menuItem1.submenu = myContextSubMenu;
            }
            protected function menuItemClick(event:Event):void
            {
                Alert.show('Sub-Menu 1 is clicked');
            }
            protected function menuItemClick2(event:Event):void
            {
                Alert.show('Sub-Menu 2 is clicked');
            }
        ]]>
    </fx:Script>
    <fx:Declarations>
        <!-- Place non-visual elements (e.g., services, value objects) here -->
    </fx:Declarations>
</s:Panel>

享受

An easy way to adding Sub-menu in AIR application

    <?xml version="1.0" encoding="utf-8"?>
   <s:Panel xmlns:fx="http://ns.adobe.com/mxml/2009" 
         xmlns:s="library://ns.adobe.com/flex/spark" 
         xmlns:mx="library://ns.adobe.com/flex/mx" width="400" height="400"
         creationComplete="panel1_creationCompleteHandler(event)"
         rightClick="panel1_rightClickHandler(event)" title="Context Menu with                         Subitem">

    <fx:Script>
        <![CDATA[
            import mx.controls.Alert
            private var myContextMenu:ContextMenu = new ContextMenu();

            protected function panel1_creationCompleteHandler(event:Event):void
            {
                this.contextMenu = myContextMenu;
            }
            protected function panel1_rightClickHandler(event:MouseEvent):void
            {
                var menuItem1:ContextMenuItem = new ContextMenuItem('Menu 1');
                var menuItem2:ContextMenuItem = new ContextMenuItem('Menu 2');


                myContextMenu.customItems = [menuItem1, menuItem2 ];

                var subMenuItem1:ContextMenuItem = new ContextMenuItem('Sub-  Menu 1');
                    subMenuItem1.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, menuItemClick);

                var subMenuItem2:ContextMenuItem = new ContextMenuItem('Sub-   Menu 2');
                    subMenuItem2.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, menuItemClick2);

                var myContextSubMenu:ContextMenu = new ContextMenu();
                myContextSubMenu.customItems = [subMenuItem1, subMenuItem2];

                menuItem1.submenu = myContextSubMenu;
            }
            protected function menuItemClick(event:Event):void
            {
                Alert.show('Sub-Menu 1 is clicked');
            }
            protected function menuItemClick2(event:Event):void
            {
                Alert.show('Sub-Menu 2 is clicked');
            }
        ]]>
    </fx:Script>
    <fx:Declarations>
        <!-- Place non-visual elements (e.g., services, value objects) here -->
    </fx:Declarations>
</s:Panel>

Enjoy

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文