这已经是一个很普遍的技术了,详细见帮助:ContextMenuItem
使用 ContextMenuItem 类可创建在 Flash Player 上下文菜单中显示的自定义菜单项。每个 ContextMenuItem 对象均具有在上下文菜单中显示的标题(文本)以及在选择菜单项时调用的回调处理函数(函数)。若要向上下文菜单添加新的上下文菜单项,请将其添加到 ContextMenu 对象的 customItems 数组。

您可以启用或禁用特定菜单项,显示或隐藏菜单项,或者更改与菜单项关联的标题或回调处理函数。

自定义菜单项出现在上下文菜单的顶部,并位于所有内置菜单项之上。自定义菜单项与内置菜单项始终由分隔条隔开。向上下文菜单添加的自定义菜单项不得超过 15 个。每个菜单项必须至少包含一个可见字符,控制字符、换行符和其它空白字符将被忽略。所有菜单项的长度不得超过 100 个字符。如果菜单项与任何内置菜单项或其它自定义菜单项相同,则无论匹配菜单项是否可见,均会忽略该菜单项。对菜单项进行比较时将忽略大小写、标点和空格。

这里是我网站的菜单

//定义菜单项函数
function tab() {
}
function homepage() {
	getURL("http://www.mousebomb.org", "_blank");
}
function qme() {
	getURL("http://wpa.qq.com/msgrd?V=1&Uin=405572555&Site=MouseBombFlash&Menu=yes", "_blank");
}
function speed() {
	_quality = "MEDIUM";
}
function speedAquality() {
	_quality = "high";
}
function quality() {
	_quality = "best";
}
function exit() {
	getURL("javascript:window.close()");
}
//定义菜单对象expandmenu
var expandmenu = new ContextMenu();
expandmenu.hideBuiltInItems();
//定义右键菜单
//new ContextMenuItem(caption, callbackFunction, [ separatorBefore, [ enabled, [ visible ] ] ] )
var $tab1 = new ContextMenuItem("----版权所有----:", tab, false, false, true);
var $btn1 = new ContextMenuItem("鼠标炸弹|www.MouseBomb.org", homepage);
var $btn2 = new ContextMenuItem("QQ:405572555", qme);
var $tab2 = new ContextMenuItem("----功能菜单----:", tab, true, false, true);
var $btn3 = new ContextMenuItem("优化显示速度 (推荐)", speed);
var $btn4 = new ContextMenuItem("优化显示质量 (配置较高用户)", quality);
var $btn5 = new ContextMenuItem("兼顾显示质量与速度 (默认)", speedAquality);
var $btn6 = new ContextMenuItem("退出/关闭本页", exit);
//使用 customItems 数组将新的菜单项添加到 ContextMenu 对象 expandmenu
expandmenu.customItems.push($tab1, $btn1, $btn2, $tab2, $btn3, $btn4, $btn5, $btn6);
//将 expandmenu 对象与对象 _root.menu 相关联
_root.menu = expandmenu;