flex 带按钮的下拉菜单
发布时间:2020-12-15 04:20:28 所属栏目:百科 来源:网络整理
导读:直接代码 定义一个Button组件 ?xml version="1.0" encoding="utf-8"?s:Button xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" click="showMenu(event)" fontWeight="nor
直接代码 定义一个Button组件 <?xml version="1.0" encoding="utf-8"?> <s:Button xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" click="showMenu(event)" fontWeight="normal"> <fx:Script> <![CDATA[ import mx.controls.Menu; import mx.events.FlexEvent; import mx.events.MenuEvent; //引入菜单事件 private var menuPoint:Point=new Point(); private var myMenu:Menu; public var menu:XML; public function showMenu(event:MouseEvent):void{ this.myMenu=Menu.createMenu(this,menu,false); myMenu.labelField="@itemShowName"; myMenu.addEventListener("itemClick",menuHandler); menuPoint.x=this.mouseX; menuPoint.y=this.mouseY; menuPoint=this.localToGlobal(menuPoint); myMenu.show(menuPoint.x,menuPoint.y); //在鼠标处(通过坐标计算得到)显出菜单 /* var but:Button=event.target as Button; myMenu.show(but.x,but.y); */ } public function menuHandler(event:MenuEvent):void{ dispatchEvent(new Event(event.item.@eventName,true,true)); } ]]> </fx:Script> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> </fx:Declarations> </s:Button> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |