以前的as2.0的写法分享给大家
代码如下 |
复制代码 |
function gotoinlookme() {
getURL('http://hi.baidu.com/inlookme', '_blank');
}
var mymenu:ContextMenu = new ContextMenu();//定义的mymenu要加上ContextMenu类型,要不后面不会出现代码提示
mymenu.hideBuiltInItems();//隐藏默认菜单,但是“设置”与“关于”不能隐藏
//new ContextMenuItem(caption, callbackFunction, [ separatorBefore, [ enabled, [ visible ] ] ] ) 完整的函数原型
mymenu.customItems.push(new ContextMenuItem("设计支持-inlookme",gotoinlookme));//将定义的条目加入菜单
_root.menu=mymenu;//绑定到主场景上,也可以针对某个按钮或其它元件来绑定菜单
|
现在使用as3.0的朋友可参考这里
代码如下 |
复制代码 |
package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.ui.ContextMenu;
import flash.ui.ContextMenuItem;
/**
* 隐藏Flash右键菜单实例
* @author fising
*/
public class Main extends Sprite
{
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
//stage.showDefaultContextMenu = false;
var cmitem:ContextMenuItem = new ContextMenuItem('MadHouse Inc. Ver 110711', true);
var cm:ContextMenu = new ContextMenu();
cm.hideBuiltInItems();
cm.customItems.push(cmitem);
this.contextMenu = cm;
}
}
}
|
注意事项:
自定义菜单项出现在上下文菜单的顶部,并位于所有内置菜单项之上。自定义菜单项与内置菜单项始终由分隔条隔开。向上下文菜单添加的自定义菜单项不得超过 15 个。每个菜单项必须至少包含一个可见字符,控制字符、换行符和其它空白字符将被忽略。所有菜单项的长度不得超过 100 个字符。如果菜单项与任何内置菜单项或其它自定义菜单项相同,则无论匹配菜单项是否可见,均会忽略该菜单项。对菜单项进行比较时将忽略大小写、标点和空格。自定义菜单项中不能出现以下字词:Macromedia、Flash Player、设置。