扩展Event 让事件带参

本文深入探讨了Flash中事件处理的概念,重点讲解了如何实现自定义事件及其在Flash应用中的具体应用,包括事件监听、事件触发与事件响应等关键环节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//-----------------------------------------------------------------------------------------------------------------------------------
//-----------------------------------------------------------------------------------------------------------------------------------

//testb.fla 帧上的代码

var element:int = 0;
var value:int = 0;

btn.addEventListener(MouseEvent.CLICK, btnClick);

function btnClick(e){
	
	element++;
	value++;
	
	dispatchEvent(new CustomEvent(CustomEvent.UPDATE_TEXT, String(element), String(value)));
}

//-----------------------------------------------------------------------------------------------------------------------------------
//-----------------------------------------------------------------------------------------------------------------------------------

//testa.fla 帧上的代码

import flash.display.Loader;
import flash.events.Event;
import flash.net.URLRequest;
import flash.display.MovieClip;

var swfMC:MovieClip;

var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, swfCom);
loader.load(new URLRequest("testb.swf"));

function swfCom(e){
	swfMC = e.target.content as MovieClip;
	swfMC.addEventListener(CustomEvent.UPDATE_TEXT, scoreBoardUpdateListener, false, 0, true);
	addChild(swfMC);
}

function scoreBoardUpdateListener(e:CustomEvent):void{
	updateData(e.element, e.value);
}

function updateData(elements:String, value:String):void{
	trace(elements + "/" + value);
}

//-----------------------------------------------------------------------------------------------------------------------------------
//-----------------------------------------------------------------------------------------------------------------------------------

//事件类
package
{
	import flash.events.Event;
	public class CustomEvent extends Event
	{
		public static const UPDATE_TEXT:String = "customEvent";
		public var element:String;
		public var value:String;

		public function CustomEvent(type:String,element:String, value:String, bubbles:Boolean=false,cancelable:Boolean=false)
		{
			super(type, bubbles,cancelable);
			this.element = element;
			this.value = value;
		}
		
		public override function clone():Event {
			return new CustomEvent(type,element,value, bubbles,cancelable)
		}
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jswm20150115

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值