关于flex的右键菜单

 

今天开发基于flex的地图系统的右键菜单,但是做来做去,也没有想到一个好的方法,网上能找到的,基本上都找了一个遍,不知道哪位大哥能给个思路,做出美观又大方的菜单。

一般来说有两种思路:

1)利用其本身的右键菜单

ContextMenu 类提供对 Flash Player 上下文菜单中的项的控制。通过在 Flash Player 中右击 (Windows) 或按住 Control 单击 (Macintosh) 可打开上下文菜单。可以使用 ContextMenu 类的方法和属性添加自定义菜单项,控制内置上下文菜单项的显示(例如“放大”和“打印”),或者创建菜单的副本。

若要向 ContextMenu 对象中添加新项,可以创建一个 ContextMenuItem 对象,然后将该对象添加到 ContextMenu.customItems 数组。Flash Player 有三种类型的上下文菜单:

标准菜单(当您在 Flash Player 中右键单击时出现);

编辑菜单(当您在可选择或可编辑的文本字段中右键单击时出现);

错误菜单(当 SWF 文件未能加载到 Flash Player 中时出现)。

只有标准菜单和编辑菜单才能使用 ContextMenu 类进行修改。

自定义菜单项始终出现在 Flash Player 上下文菜单的顶部,并位于所有可见内置菜单项之上;内置菜单项和自定义菜单项之间由一个分隔条加以分隔。向上下文菜单添加的自定义菜单项不得超过 15 个。不能从上下文菜单中删除设置菜单项。在 Flash 中,必须有设置菜单项,以便能够访问影响其计算机上的隐私和存储的设置。也不能删除关于菜单项,必须具有这个菜单项,以便用户能够了解正在使用的 Flash Player 的版本。

必须在使用 ContextMenu() 构造函数创建 ContextMenu 对象后才能调用其方法。

用此方法有明显示的遗憾,不能将设置和关于两个系统菜单去掉,另外如果flash版本为debug版本,会显示重绘区域和调试器两个菜单。

 

2)另外一种就是屏蔽右键菜单,做自己单独的菜单,但网上已经有许多版本说明其缺点了,那就是会严重影响中文输入法,此部分代码可上google code 搜索,关键词:rightclick ,flex,从另外一个层面想,就是外国人设计的,终究还是不能适应中国人,但中国人为啥不能自己设计一个呢?当然,别找我,我很忙,没有时间关于flex的右键菜单

你可能感兴趣的:(Flex)