讲解:
下例使用 ContextMenuExample 类从舞台中删除默认上下文菜单项,并添加一个新的菜单项,如果单击该菜单项,将可更改舞台上正方形的颜色。 这是由以下步骤完成的:
1. 声明 myContextMenu 属性,然后将其赋给新的 ContextMenu 对象,并声明 Sprite 类型的 redRectangle 属性。
2. 调用 removeDefaultItems() 方法,该方法将删除所有内置的上下文菜单项(“打印”除外)。
3. 调用 addCustomMenuItems() 方法,该方法使用数组的 push() 方法将称为 Red to Black 菜单选择的菜单项放入 defaultItems 数组。 将 menuItemSelect 事件侦听器添加到 ContextMenuItem 对象中,关联的方法名为 menuItemSelectHandler()。 当访问上下文菜单并选择 Red to Black 时,此方法使用 trace() 输出一些语句。 同时,红色正方形被删除并替换为一个黑色正方形。
4. 添加类型 menuSelect 的事件侦听器以及关联的方法 menuSelectHandler,该方法在每次打开上下文菜单中的项时只使用 trace() 输出三个语句。
5. 然后,addChildren() 将绘制一个红色正方形并将其添加到显示列表,该红色正方形将立即显示在列表中。
6. 最后,myContextMenu 赋给 redRectangle sprite 的上下文菜单,以便仅当鼠标移动到该正方形上方时才显示自定义上下文菜单。
源程序下载:
menu.rar
(5.96 KB, 下载次数: 25)
|