Flex右键菜单问题。
我有一个titleWindow..里面有个组件VideoDisplayer,,,我现在需要在视频画面上右击自定义菜单会弹出一个设置音视频的窗口。。目前问题就是。。在视频画面上右键菜单出来了。。但是设置音视频的窗口弹不出来的。。也就是右键菜单的ContextMenuEvent.MENU_ITEM_SELECT这个事件没响应。。。
部分代码:
- Java code
//初始化开始了 public function init():void{ //这个就是把那些事件全部加到一起,放在ContextMenu上 var MyMenu:ContextMenu = new ContextMenu(); menu1= new ContextMenuItem("音视频调节"); menu1.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,menudraw); MyMenu.hideBuiltInItems(); MyMenu.customItems.push(menu1); //这个是整个舞台的监听. videoDis.contextMenu = MyMenu; var localVideo:Video = new Video();/* if(camers != null) { */ var camers:Camera = new Camera(); camers = Camera.getCamera(SX_VideoAudioConfig._nCurrVideoIndex.toString()); camers.setQuality(0, 100); camers.setMode(320, 240, SX_VideoAudioConfig._nVideoZhen); localVideo.attachCamera(camers); videoDis.addChild(localVideo); //} } //选择到了右键栏目, private function menudraw(e:ContextMenuEvent):void { _videoSet = new VideoSetWin(); _videoSet.x = Capabilities.screenResolutionX/2- _videoSet.width/2; _videoSet.y = Capabilities.screenResolutionY/2-_videoSet.height/2 - 50; PopUpManager.addPopUp(_videoSet,this); PopUpManager.removePopUp(this); }
这是组件:
<s:VideoDisplay id="videoDis" width="100%" height="240" muted="true" >
</s:VideoDisplay>
[解决办法]
ContextMenuEvent.MENU_ITEM_SELECT这个事件是响应的
响应函数中的VideoSetWin组件有问题~~贴出来
PopUpManager.removePopUp(this);//想干什么??
removePopUp移除的是addPopUp或CreatePopUp出来的窗口,this什么意思
[解决办法]
PopUpManager.addPopUp(_videoSet,this);
PopUpManager.removePopUp(this);
怎么刚加上就移除?
从以上代码看,ContextMenuEvent.MENU_ITEM_SELECT是没问题的
[解决办法]
按你的描述应该不是你组件的问题了
可能菜单创建和监听Flex3和4不兼容,
Flex4的API我也没仔细看过~~~
没办法~~等楼下吧
[解决办法]
4应该是不至此这种写法,楼主你可以查一下,换一种写法,但是目前感觉4还是不太好
[解决办法]
我有一个titleWindow..里面有个组件VideoDisplayer,,,我现在需要在视频画面上右击自定义菜单会弹出一个设置音视频的窗口.
你见过哪个flash 右键可以直接打开窗体,只能出现右键菜单,选择后才可以
除非 不要让html 右键事件传递到flash 不要让flash冒泡什么的!
http://code.google.com/p/custom-context-menu/
http://fykyx521.javaeye.com/admin/blogs/403269