9RIA-沐枫 发表于 2018-2-6 21:07:21

【9RIA—沐枫】—【基础小知识】第27节(事件流机制)

转载:9RIA游戏开发者社区(天地会)
作者:沐枫(原天地会大神)


【基础小知识】系列教程(总目录)——沐枫大神出品



源码
package
{
import flash.display.Sprite;
import flash.events.MouseEvent;

import others.Rect;

public class Main extends Sprite//显示对象容器Main
{
public function Main()
{
var rect:Rect=new Rect(100,100);
rect.x=200;
rect.y=100;
addChild(rect);//添加到显示对象容器
// rect.addEventListener(MouseEvent.CLICK,onClickHandler,true);//true表示在捕获阶段响应
// this.addEventListener(MouseEvent.CLICK,onClickHandler,true);
// stage.addEventListener(MouseEvent.CLICK,onClickHandler,true);
rect.addEventListener(MouseEvent.CLICK,onClickHandler);//去掉true,不进行捕获,直接进行冒泡
addEventListener(MouseEvent.CLICK,onClickHandler);
stage.addEventListener(MouseEvent.CLICK,onClickHandler);
}

protected function onClickHandler(event:MouseEvent):void
{
// TODO Auto-generated method stub
// ——————捕获阶段,是从最外层向最内层渗透————————
// trace("捕获到"+event.currentTarget);//当前响应目标
// trace("______________如果捕获到目标,则停止响应,进入目标阶段________________");
// ——————冒泡阶段,是从最里层向最外层溢出——————
trace("冒泡:"+event.currentTarget);//注,如果在显示对象容器Main上进行点击,若容器上没有可视化对象时,则会点穿这个容器直接点击到舞台stage上;
}
}
}

package others
{
import flash.display.Shape;
import flash.display.Sprite;

public class Rect extends Sprite
{
public function Rect(w:Number,h:Number)
{
var sp:Shape=new Shape();
addChild(sp);
sp.graphics.beginFill(0xff0000,1);
sp.graphics.drawRect(0,0,w,h);
sp.graphics.endFill();
}
}
}

下载:

页: [1]
查看完整版本: 【9RIA—沐枫】—【基础小知识】第27节(事件流机制)

感谢所有支持论坛的朋友:下面展示最新的5位赞助和充值的朋友……更多赞助和充值朋友的信息,请查看:永远的感谢名单

SGlW(66139)、 anghuo(841)、 whdsyes(255)、 longxia(60904)、 囫囵吞澡(58054)

下面展示总排行榜的前3名(T1-T3)和今年排行榜的前3名的朋友(C1-C3)……更多信息,请查看:总排行榜今年排行榜

T1. fhqu1462(969)、 T2. lwlpluto(14232)、 T3. 1367926921(962)  |  C1. anghuo(147)、 C2. fdisker(27945)、 C3. 囫囵吞澡(58054)