Apache flex flex自定义事件冒泡
亲爱的Richard Szalay,Apache flex flex自定义事件冒泡,apache-flex,events,event-bubbling,Apache Flex,Events,Event Bubbling,亲爱的Richard Szalay, 我看了你们关于泡泡的答案,我想探索更多的泡泡。 请看下面我的样品 <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:view="com.view.*" > <mx:Script> <![CDATA[ import com.events.ImgLoaded; private function loa
我看了你们关于泡泡的答案,我想探索更多的泡泡。 请看下面我的样品
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:view="com.view.*" >
<mx:Script>
<![CDATA[
import com.events.ImgLoaded;
private function loadedd(evt:ImgLoaded):void{
trace("test")
evt.stopImmediatePropagation();
}
private function panelClickHandler(evt:Event):void{
trace("panel");
}
]]>
</mx:Script>
<mx:VBox>
<mx:Panel click="panelClickHandler(event)">
<view:Load imgLoad="loadedd(event)"/>
</mx:Panel>
</mx:VBox>
</mx:Application>
在我的自定义事件类中,我设置bubbling=true,cancelable=true
从前面的回答中,我可以理解冒泡只会影响UI组件;从自定义类激发的事件不会冒泡,即使冒泡参数设置为true也是如此
我的问题是,当我单击“加载”(自定义组件)中的按钮时,如何防止触发panelClickHandler函数
请用一个很好的例子来解释冒泡(比如自定义事件类)?我假设你的母语不是英语,无论如何我不确定我是否完全理解你的意思,但我想你要问的是如何允许视图中的点击:从启动面板上的点击处理程序加载 您需要的是设置一个事件监听器,以便单击视图:加载组件,并从此处停止播放。这将防止面板上的单击处理程序触发。例如:
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:view="com.view.*" >
<mx:Script>
<![CDATA[
import com.events.ImgLoaded;
private function loadedd(evt:ImgLoaded):void{
trace("test")
evt.stopImmediatePropagation();
}
private function panelClickHandler(evt:Event):void{
trace("panel");
}
private function load_clickHandler ( e:MouseEvent ) : void
{
e.stopPropagation;
}
]]>
</mx:Script>
<mx:VBox>
<mx:Panel click="panelClickHandler(event)">
<view:Load imgLoad="loadedd(event)" click="load_clickHandler(event)"/>
</mx:Panel>
</mx:VBox>
</mx:Application>
这似乎是指以下答案: