很多人都喜欢在FLASH点击右键后,出现自己产品的COPYRIGHT,或者在FLASH用右键控制里面的实例,这次发一篇FLEX的右键管理,你会问:FLASH CS3的呢?唉,FLEX转FLASH CS3还不容易嘛,就帮忙让我写完这篇属于FLEX的文章吧.废话不多说,开始行动.上CODE,我不会在每个代码上过多的解释,这样反而会让你陷入迷茫。
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()" > <mx:Script> <![CDATA[ //导入这些东西比较重要,我们主要靠这些混饭吃 import flash.display.Sprite; import flash.ui.ContextMenu; import flash.ui.ContextMenuItem; import flash.events.ContextMenuEvent; //在全局上,定义三个栏目 private var menu1:ContextMenuItem; private var menu2:ContextMenuItem; private var menu3:ContextMenuItem; //初始化开始了 public function init():void{ textSelect.text = "RightClick is Default"; menu1= new ContextMenuItem("Draw Red"); menu2 = new ContextMenuItem("Draw Yellow"); menu3 = new ContextMenuItem("Default"); //让这三个栏目监听点事件 menu1.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,menudraw); menu2.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,menudraw); menu3.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,menudraw); //这个就是把那些事件全部加到一起,放在ContextMenu上 var MyMenu:ContextMenu = new ContextMenu(); MyMenu.hideBuiltInItems(); MyMenu.customItems.push(menu1); MyMenu.customItems.push(menu2); MyMenu.customItems.push(menu3); //这个是定义那个部位来监听,如果你定义了一个实例,想要你的实例监听你的右键,那么把this 改为你的实例名字 //这个是整个舞台的监听. this.contextMenu = MyMenu; } //选择选择到了右键栏目,改干点啥 private function menudraw(e:ContextMenuEvent):void { switch (e.target) { case menu1 : textSelect.text = "RightClick IS READ"; pan.draw(0xff0000); break; case menu2 : textSelect.text = "RightClick IS Yellow"; pan.draw(0xffcc00); break; case menu3 : textSelect.text = "RightClick is Default"; pan.draw(0x0099cc); break; } } ]]> </mx:Script> <mx:Label x="97" y="60" id="textSelect" text="Test Right-Click"/> </mx:Application>
PS:这是一个很简单的例子,你要玩的开,可以靠这个延伸到许多地方,我一般写东西就是些一些基础的,其余的部分是要靠你来完成,我留的空间大点,你的思考就需要点时间来完成,你的发挥余地大点,毕竟只是基础知识.其实那些很重要,我做东西都是靠基础的.有些BUG是我懒惰的原因,多花点时间就可以改掉了,但是我实在太懒惰了,我留着地方让你来改,更是希望你来告诉我,怎么改,怎么把BUG去掉..
|