Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 是否可以通过z索引而不是层次结构来冒泡MouseEvent?_Actionscript 3_Apache Flex_Ilog Elixir - Fatal编程技术网

Actionscript 3 是否可以通过z索引而不是层次结构来冒泡MouseEvent?

Actionscript 3 是否可以通过z索引而不是层次结构来冒泡MouseEvent?,actionscript-3,apache-flex,ilog-elixir,Actionscript 3,Apache Flex,Ilog Elixir,我有两个组件绝对位于一个容器中(如果有帮助的话,它们是ILOG Elixir地图上的地图符号)。每个组件都是一个带有图像和标签的VBox。图像具有与单击事件相关的功能;标签不起作用 问题是,当定位两个项目时,其中一个项目的标签位于z索引中另一个项目的图标上方,因此标签会吃掉任何mouseOver和mouseDown事件。冒泡没有帮助,因为它会从标签到vbox再到容器冒泡,而不会碰到较低的元素。我无法将vbox设置为mouseChildren=“false”,因为这样也可以防止图像被单击 我能帮上

我有两个组件绝对位于一个容器中(如果有帮助的话,它们是ILOG Elixir地图上的地图符号)。每个组件都是一个带有图像和标签的VBox。图像具有与单击事件相关的功能;标签不起作用

问题是,当定位两个项目时,其中一个项目的标签位于z索引中另一个项目的图标上方,因此标签会吃掉任何mouseOver和mouseDown事件。冒泡没有帮助,因为它会从标签到vbox再到容器冒泡,而不会碰到较低的元素。我无法将vbox设置为mouseChildren=“false”,因为这样也可以防止图像被单击

我能帮上什么忙吗?组件的定位和数量是数据驱动的,而不是我可以控制的

编辑:一些澄清。每个不同组件的结构如下所示:

<VBox>
    <Image source="whatever" click="handleClick()"/>
    <Label text="{item.label}/>
</VBox>


label.mouseEnabled=false
会使标签后面的区域可点击,这不是您需要的吗?

label.mouseEnabled=false将使标签后面的区域可单击,这不是您所需要的吗?

z索引由显示树决定,索引较高的子显示对象显示在其兄弟对象的上方,因此这就是它的工作方式

当你还是个孩子的时候,你应该做的是把你的标签放在你的按钮里,但是如果你只是想和黑客一起运行,你需要:

label.mouseEnabled=false;
label.mouseChildren=false;

z索引由显示树决定,索引较高的子显示对象显示在其同级对象的上方,因此这就是它的工作方式

当你还是个孩子的时候,你应该做的是把你的标签放在你的按钮里,但是如果你只是想和黑客一起运行,你需要:

label.mouseEnabled=false;
label.mouseChildren=false;
为什么标签位于它所属的按钮上方?它真的应该在里面。然后你的问题也消失了。为什么你的标签放在它所属的按钮上方?它真的应该在里面。然后你的问题也消失了。