Flex上下文菜单不显示所有项目

时间:2013-09-12 08:27:57

标签: flex contextmenu show visible

我为我的应用程序创建了一个上下文菜单。

if (!contextMenu) 
            {
                contextMenu = new ContextMenu();
            }

            contextMenu.hideBuiltInItems();
            contextMenu.addEventListener(ContextMenuEvent.MENU_SELECT,onContextMenuSelected);

            _cmiEdit=new ContextMenuItem("Ändern");
            _cmiEdit.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,onContextMenuItemSelected);

            _cmiDelete=new ContextMenuItem("Löschen");
            _cmiDelete.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,onContextMenuItemSelected);


            contextMenu.customItems.push(_cmiEdit,_cmiDelete);

在应用程序中只有第一个Contextmenuitem可见,我无法弄清楚为什么? 在Air中都显示了。 Flashplayerversion 11.8

1 个答案:

答案 0 :(得分:0)

这似乎是Flex的一个错误!我尝试用另外一个菜单项“ÜberdasProgramm”启动你的代码。新项目出现了!然后我尝试用“oe”改变Löschen中的“ö”并且它有效!

enter image description here

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
           xmlns:s="library://ns.adobe.com/flex/spark" 
           xmlns:mx="library://ns.adobe.com/flex/mx" 
           minWidth="955" minHeight="600" creationComplete="init(event)">

<fx:Script>
    <![CDATA[
        import mx.events.FlexEvent;

        protected function init(event:FlexEvent):void
        {
            var _cmiEdit:ContextMenuItem;
            var _cmiDelete:ContextMenuItem;
            var _cmiAbout:ContextMenuItem;

            if (!contextMenu) 
            {
                contextMenu = new ContextMenu();
            }

            contextMenu.hideBuiltInItems();
            contextMenu.addEventListener(ContextMenuEvent.MENU_SELECT, onContextMenuSelected);

            _cmiEdit = new ContextMenuItem("Ändern");
            _cmiEdit.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, onContextMenuItemSelected);

            _cmiDelete=new ContextMenuItem("Loeschen");
            _cmiDelete.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, onContextMenuItemSelected);

            _cmiAbout=new ContextMenuItem("Über das Programm");
            _cmiAbout.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, onContextMenuItemSelected);


            contextMenu.customItems.push(_cmiEdit, _cmiDelete, _cmiAbout);
        }

        protected function onContextMenuSelected(evt:ContextMenuEvent):void
        {

        }

        protected function onContextMenuItemSelected(evt:ContextMenuEvent):void
        {

        }

    ]]>
</fx:Script>

</s:Application>