今天在看Flex弹出菜单的时候,竟然调试了半天没有结果。 自己根据示例写的,怎么也显示不出来。但是完全按照示例写的确能显示出来。 不明白怎么回事。以后再慢慢研究吧。
自己写的:<?xml version="1.0" encoding="utf-8"?><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> <mx:VBox x="10" y="10" width="138" height="98"> <mx:Button label="Button" icon="@Embed('images/icon-fxrr.gif')" overIcon="@Embed('images/029.gif')" mouseDown="{lbTest.text='鼠标单击'}" mouseOver="{lbTest.text='鼠标在上'}" mouseOut="{lbTest.text='鼠标移开'}"/> <mx:Button label="Button"/> <mx:Label text="Hello World" fontWeight="bold" id="lbTest" /> </mx:VBox> <mx:Spacer height="50" /> <mx:Script> <![CDATA[ import mx.controls.*; import mx.events.*; private var myMenu:Menu; //初始化弹出菜单 private function initMenu():void{ myMenu=new Menu(); var dp:Object=[{label:"菜单 1"},{label:"菜单 2"},{label:"菜单 3"}]; myMenu.dataProvider=dp; myMenu.selectedIndex=1; myMenu.addEventListener("itemClick",itemClickHandler); popB.popUp=myMenu; //popB.data =menuData; popB.label="点击弹出"; } //监听itemClick事件 private function itemClickHandler(event:MenuEvent):void{ var label:String=event.label; popTypeB.text=String("所选菜单:"+label); popB.close(); myMenu.selectedIndex=event.index; } ]]> </mx:Script> <mx:Panel x="10" y="142" width="470" height="338" paddingTop="10" paddingBottom="10"> <mx:PopUpMenuButton x="19" y="24" label="PopUpMenuButton" id="popB" creationComplete="initMenu();" width="150"/> <mx:Spacer height="50" /> <mx:TextArea x="19" y="137" id="popTypeB"/> </mx:Panel></mx:Application>示例:
<?xml version="1.0" encoding="utf-8"?><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> <mx:Script> <![CDATA[ import mx.controls.*; import mx.events.*; private var myMenu:Menu; private function initMenu():void { myMenu=new Menu(); var dp:Object=[{label:"目录 1"},{label:"目录 2"},{label:"目录 3"}]; myMenu.dataProvider=dp; myMenu.selectedIndex=0; myMenu.addEventListener("itemClick",itemClickHandler); popB.popUp=myMenu; popB.label="点击弹出按钮"; } private function itemClickHandler(event:MenuEvent):void{ var label:String=event.label; popTypeB.text=String("所选菜单:"+label); popB.close(); myMenu.selectedIndex=event.index; } ]]> </mx:Script> <mx:Panel title="弹出按钮" height="75%" width="75%" paddingTop="10" paddingBottom="10"> <mx:PopUpButton id="popB" creationComplete="initMenu();" width="135" /> <mx:Spacer height="50" /> <mx:TextArea id="popTypeB" height="28"/> </mx:Panel> </mx:Application>