首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MenuBar没有显示

MenuBar没有显示
EN

Stack Overflow用户
提问于 2014-01-13 22:34:46
回答 1查看 120关注 0票数 0

mx MenuBar没有显示其中一个菜单项。几分钟前还很正常。我没有改变任何密码。我注意到当我点击它时,它显示出一个阴影。

代码语言:javascript
复制
    <mx:MenuBar id="mainMenuBar" 
                dataProvider="{rootMenu}"
                labelField="label"
                height="100%"
                useHandCursor="true"
                buttonMode="true"
                showRoot="false"
                menuShow="menuItemEventHandler(event)" 
                menuHide="menuItemEventHandler(event)"
                itemClick="menuItemEventHandler(event)" 
                itemRollOut="menuItemEventHandler(event)"
                itemRollOver="menuItemEventHandler(event)" 
                change="menuItemEventHandler(event)"
                >
    </mx:MenuBar>

        /**
         * 
         * */
        private function menuItemEventHandler(event:MenuEvent):void {

            if (event.item is MenuItem) {
                EventDispatcher(event.item).dispatchEvent(event);
            } 
            else if (event.menu && event.menu.dataProvider && 
                event.menu.dataProvider[0] is MenuItem && 
                event.menu.dataProvider[0].parent is MenuItem)
            {
                EventDispatcher(event.menu.dataProvider[0].parent).dispatchEvent(event);
            }
        }



    <model:MenuItem id="rootMenu">
        <model:MenuItem label="Edit" >
            <model:MenuItem id="undo" label="Undo" />
            <model:MenuItem id="redo" label="Redo" />
            <model:MenuItem type="separator"/>
            <model:MenuItem id="cut" label="Cut" enabled="false"/>
            <model:MenuItem id="copy" label="Copy" enabled="false"/>
            <model:MenuItem id="paste" label="Paste" name="paste" enabled="false"/>
            <model:MenuItem id="undo1" label="Undo" />
            <model:MenuItem id="redo1" label="Redo" />
            <model:MenuItem type="separator"/>
            <model:MenuItem id="cut1" label="Cut" enabled="false"/>
            <model:MenuItem id="copy1" label="Copy" enabled="false"/>
            <model:MenuItem id="paste1" label="Paste" name="paste" enabled="false"/>
            <model:MenuItem id="undo2" label="Undo" />
            <model:MenuItem id="redo2" label="Redo" />
            <model:MenuItem type="separator"/>
            <model:MenuItem id="cut2" label="Cut" enabled="false"/>
            <model:MenuItem id="copy2" label="Copy" enabled="false"/>
            <model:MenuItem id="paste2" label="Paste" name="paste" enabled="false"/>
            <model:MenuItem id="undo3" label="Undo" />
            <model:MenuItem id="redo3" label="Redo" />
            <model:MenuItem type="separator"/>
            <model:MenuItem id="cut3" label="Cut" enabled="false"/>
            <model:MenuItem id="copy3" label="Copy" enabled="false"/>
            <model:MenuItem id="paste3" label="Paste" name="paste" enabled="false"/>
        </model:MenuItem>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-13 22:38:46

问题是菜单的高度高于应用程序的高度。所以它是显示的,但是它没有显示在屏幕上。我猜逻辑是,如果菜单弹出的任何部分在屏幕之外,菜单必须位于应用程序的底部,所以弹出应该显示在菜单栏的上方而不是在菜单栏下面。

解决办法是让屏幕更高(我看到了Firebug,所以它不是典型的高度)。我可以检查弹出的高度,并将其与应用程序的高度进行比较,并手动将弹出垂直位置设置为正确的位置。在此之后,我还没有试图解决这个问题,因为用户可能永远不会在这么短的高度上使用该应用程序。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21102762

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档