近些天遇到了右键菜单的问题 随即总结了下:
一般右键会有以下几种情况:
1.屏蔽右键菜单
stage.showDefaultContextMenu = false
此方法无法完全屏蔽右键菜单,会有几个默认菜单无法屏蔽,比如:设置
2.要想完全屏蔽右键菜单可以使用下面的方法:
stage.addEventListener(MouseEvent.RIGHT_CLICK,function onRightClick(e:MouseEvent){})
但这种方法需要高版本的flash player 至少需要11.2的版本
3.屏蔽部分菜单
var zcd:ContextMenu =
new ContextMenu()
var bu:ContextMenuBuiltInItems =
new ContextMenuBuiltInItems()
bu.print = false//屏蔽打印
bu.zoom = false//屏蔽放大缩小
zcd.builtInItems = bu
this.contextMenu = zcd//这里的this表示舞台stage
4.自定义菜单
var zcd:ContextMenu =
new ContextMenu()
zcd.hideBuiltInItems()//影藏原有菜单
var it:ContextMenuItem = new ContextMenuItem("我是自定义的菜单")
zcd.customItems.push(it)
this.contextMenu = zcd//将舞台的上下文菜单换成新定义的菜单 这里的this 也是表示舞台
5.既然自定义了菜单了 当然是希望他有所作为咯,自定义右键菜单事件
it.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,onMenu)//此处的it是上面定义的自定义的菜单
function onMenu(e:ContextMenuEvent)
{
navigateToURL(new URLRequest("http://www.baidu.com"))//连接网站
}