2011-06-12 86 views
1

当用户右键单击某个按钮时,将显示“删除”上下文菜单项。如果用户点击“删除”选项,该按钮应该从其瓷砖父容器中移除。我将如何使用Flex 3和ActionScript 3实现这一点?右键菜单上的删除按钮选项

回答

1

你需要创建一个自定义flash.ui.ContextMenu,向其中添加一个ContextMenuItem对应删除你希望用户选择文本。

添加一个事件监听器到这个ContextMenuItem,它将处理移除被点击的项目。下面是实现去除的一种方法:

private function removeItemHandler(event:ContextMenuEvent):void 
    { 
    ((event.mouseTarget as DisplayObject).parent as DisplayObjectContainer).removeChild((event.mouseTarget as DisplayObject)); 
    Alert.show((event.mouseTarget.toString() + " has been removed."),"Display Object Removed"); 
    } 

最后,确保设置要ContextMenu你创建的是可移动的定制所有组件的contextMenu财产(InteractiveObject的)。

的上面的代码对应于Flex 3中,由于问题指定。对于Flex 4,分别使用IVisualElement,IVisualElementContainerremoveElement方法代替DisplayObjectDisplayObjectContainerremoveChild方法。

相关问题