Apache flex 如何在flex中停止获取鼠标单击事件

Apache flex 如何在flex中停止获取鼠标单击事件,apache-flex,actionscript,flash-builder,Apache Flex,Actionscript,Flash Builder,我已经建立了一个层次结构,其中有一个主页,使用add元素我已经附加了一个类型为group的组件mxml。当单击主页面上的一个按钮时,它应该在该组类型mxml组件中添加group类型的子项以及两个按钮。现在,我使用其中一个按钮连接另一个组件mxml类型组。问题是,即使它们重叠,我仍然可以超过第一组组件mxml的子组。如何才能阻止此鼠标事件发生 我认为这类事件通常会出现在父组件上。 您可以尝试在鼠标单击事件侦听器中使用以下代码来停止进一步传播: private function onMouseCli

我已经建立了一个层次结构,其中有一个主页,使用add元素我已经附加了一个类型为group的组件mxml。当单击主页面上的一个按钮时,它应该在该组类型mxml组件中添加group类型的子项以及两个按钮。现在,我使用其中一个按钮连接另一个组件mxml类型组。问题是,即使它们重叠,我仍然可以超过第一组组件mxml的子组。如何才能阻止此鼠标事件发生

我认为这类事件通常会出现在父组件上。 您可以尝试在鼠标单击事件侦听器中使用以下代码来停止进一步传播:

private function onMouseClicked(event: MouseEvent): void {
    event.stopPropagation();
    ... do whatever you wanted when smth was clicked ...
}

通过将enabled、mouseChildren、mouseEnabled设置为false,您将禁用整个组件及其子组件。下面的例子

private var myPreviousGroupComponent:Group = null;
function addNewGroup():void
{
    if(myPreviousGroupComponent != null)
    {
        myPreviousGroupComponent.enabled = false;
        myPreviousGroupComponent.mouseChildren = false;
        myPreviousGroupComponent.mouseEnabled = false;
    }

    var newGroup:Group = new Group();
    addElement(newGroup);

    myPreviousGroupComponent = newGroup;
}

最好放一些mxml代码来解释您的层次结构。无论如何,据我所知,您可以在eventhandler函数中处理事件后使用event.stopImmediatePropagation()。就像@M.D.所说的,一些代码会非常有用发布一些代码,不知道您想要什么,通过添加mouseChildren=false和mouseEnabled=false,鼠标事件将不会生成。