首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何修改现有的AS3事件以便我可以传递数据?

要修改现有的AS3事件以便您可以传递数据,您需要遵循以下步骤:

  1. 定义事件类型:首先,您需要定义一个事件类型,该类型应包含您要传递的数据。例如:
代码语言:as3
复制
class CustomEvent extends Event {
    public var data:Object;

    public function CustomEvent(type:String, data:Object, bubbles:Boolean = false, cancelable:Boolean = false) {
        super(type, bubbles, cancelable);
        this.data = data;
    }

    public override function clone():Event {
        return new CustomEvent(type, data, bubbles, cancelable);
    }
}
  1. 修改事件监听器:接下来,您需要修改现有的事件监听器以便它可以接收您的自定义事件。例如:
代码语言:as3
复制
addEventListener(CustomEvent.MY_EVENT, onCustomEvent);
  1. 分派事件:最后,您需要在适当的时候分派事件。例如:
代码语言:as3
复制
var customEvent:CustomEvent = new CustomEvent(CustomEvent.MY_EVENT, {name: "John", age: 30});
dispatchEvent(customEvent);

这样,您就可以在事件监听器中接收到自定义事件,并访问传递的数据。例如:

代码语言:as3
复制
private function onCustomEvent(event:CustomEvent):void {
    trace("Name: " + event.data.name);
    trace("Age: " + event.data.age);
}

请注意,这只是一个简单的示例,您可以根据您的需求进行修改。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

AS3与PHP通信

> 从上面的示例可以看出,as3和后台交互是多么简单,但这只是单项的交互,如果要flash向后台发送数据并传回数据如何去做呢?这个时候你可能会把代码该成这样: 1....的,也就是说,它只包含接受到的数据,而不管要发送的数据,那么,as3如何向后台发送数据呢?...URLVariables允许你在flash和后台程序间传输变量, as3里已经把发送和接受数据分离,再也不像as2的loadVars那样,一个类通吃所有了,那么这个URLVariables如何送要发送的数据呢...> 以上这些就是as3里和后台交互的基础内容,现在你可以as3里创建这样的交互,获取动态数据来丰富你的程序,在你开始自己动手实验之前,还有一些东西值得注意: 1,记得捕获和处理异常(上述的例子里都是假定在完美的测试环境下运行...2,文件的编码,这是个常见的问题,经常很多数据变成了乱码,或者解析出错,都是因为编码的问题,的做法是确保发送的数据和后台传回的数据都是UTF-8格式(因为flash默认编码为utf-8) 最后希望这篇文章能对你有所帮助

89830

AS3 内存回收机制

AS3相对于以前版本的功能增强了很多,在赋予它重任时,同时也要它付出代价:垃圾收集器不再支持自动为你收集垃圾。本文中,为大家整理了一些资料。...当你创建一个指向某个对象的引用,该对象的引用计数器加1;当你删除该对象的一个引用,该计数器减1.当某对象的计数器变成0,该对象将被标记以便垃圾回收器回收。     ...没有任何办法在程序中再访问这两个对象了,但这两个对象的引用计数器都是1,因为它们相互引用。循环引用 还可以更加负责 (a 引用 c, c引用b, b引用a, 等等) 并且难于用代码处理。...该过程结束后,FlashPlayer可以安全的假设:所有内存中没有被标记的对象不再有任何活动引用,因此可以被安全的删除。...图1 演示了它如何工作:绿色引用(箭头)曾被FlashPlayer 标记过程中经过,绿色对象被标记过,白色对象将被回收。 (3)AS3的内存机制的特点:           1.

71510

AS3性能优化

,建议用vector,它的效率最高尤其是存储数量比较多的数据时.另外如果知道要存储多少数据,最好是用:(假设知道有20个MyClass对象)这样效率会进一步提高....(20); 3,关于对象池: 缓存一些相同的对象,以便于随时调用.这里强调一些事情:     ①:缓存的对象数目:很对情况下,读段时间这个对象可能要用10个,可能要8个,可能12个....:对A进行滤镜.先对A进行副本a,对副本a进行滤镜.30秒后,如果没有对A进行滤镜修改则dispose掉A(这些电脑自动进行).再修改filter,对a计算原件aa,对aa进行滤镜.这回知道滤镜多么的坑爹了吧....如要滤镜效果,还是用Flash做一个,他不会产生多余的东西(副本). 6,关于自定义事件和CallBack(回调函数):     首先必须说明CallBack完胜自定义事件.也就是说能用CallBack...,CallBack无法办到,那还得用Event. 7,useCapture = true:     如显示对象不做任何修改,移位,缩放,旋转.用useCapture = true能提高性能.但是如做出修改则适得其反

74410

重磅:LayaAir2.2将引擎源码全面切换至TypeScript,支持WebGL2.0,并增加大量3D实用功能

对现有的功能和准备开发的功能,未来将会起到明显的优化效果,如果有不支持WebGL 2.0的平台,引擎也会自动回滚至WebGL1.0模拟实现。...新增自定义修改模型顶点和索引数据 在2.2.0 beta版本中,3D Mesh开放了修改顶点相关的数据接口,开发者可自定义修改模型顶点和索引数据,例如可自定义模型顶点动画或自定义改造模型几何体。...不仅优化了鼠标相关事件检测效率,使得相关使用的性能有所提升。...在2.2.0以前的版本里,AS3项目,以引用2D物理库为例,index.js里只需要引入box2d库就可以了。...提前开放出来,是让大家可以率先体验和反馈问题,也表示着我们在开发环境用户体验方面也在不停的努力着。

1.8K10

网页游戏怎么开发的_网页软件游戏开发

——此系列谨记录步入页游开发队伍的历程。 0.写在前面 相信有很多和我一样的人,曾多次问google、问baidu、问各大论坛——如何开发游戏?开发游戏如何入门?...此系列,至少是目前阶段,主要关注如何使用ActionScript 3.0开发网页游戏(本人完全从0起步),关于后台如何使用C++不进行详细介绍(后面有机会在介绍)。...1.近期计划 下面是导师给我的安排: 时间 任务 学习目标 输出 2011-5-5 ~ 2011-5-18 1、熟悉AS3基本语法 2、了解AS3事件机制 3、熟悉Flash动画原理 4、使用AS3获取外部数据...游戏中所有的服装和配件都有惹火度(Hotness)以及适合的场合类型,因此玩家除了购入高惹火度衣服之外,也要留意适合这些服装能出席的场合。...3.Hello World 新建一个AS3项目,如下所示,在Main.as中输入下代码: 运行可以在输出窗口看到,“Hello World!”。

5.6K30

HTML5的File API

而HTML5中的FileReader对象与as3中的很像,只不过目前as3中的方法比这个多(有兴趣可以自己去看看adobe的lives docs,对比一下两者的区别与共同点)。...as3中是两个不同的对象:FileReference、FileReferenceList,在as3可以使用FileFilter过滤只允许选择的上传文件。...尝试着去寻找HTML5中是否也如as3可以让开发者自定义过滤选择文件呢,结果被我找到了http://en.wikipedia.org/wiki/File_select  添加一个属性就好了accept...默认为“自定义文件”,如果选择“所有文件”,所有的文件都将显示出来。 ? ? 3、上传文件 这里遇到一个问题,如何获取ajax发送过去的图片信息。...因为在ajax中使用的是setRequestHeader将图片信息传给后台,因为使用的nginx,无法直接获取 自定义的http-header,就修改了fastcgi-params,加了三项: ?

1.9K20

AS3程序员小福利--as3js介绍及FlashDevelop工程的配置

现在AS3JS纯粹是转换器,但是你可以自由的扩展它,如果你愿意,因为它是开源的。 github项目地址:https://github.com/cleod9/as3js 它是如何工作的?...这意味着所有的AS3特定关键字会被去除,以及将代码重新组织成可在一个JS环境中运行的单个文件。 源代码的输出是可读的,因为它类似于原始AS3代码。没有复杂的结构。...最关键的一点要记住的是,AS3,其核心是JavaScript的语法糖。这意味着,你可以选择你想要的AS3的功能,以用于项目。...我们可以把Main.as修改一下放到src/app目录下。...顺便我们还需要修改一下make.bat as3js -src src -o bin/output.js -e new:app.Main 8.按F5运行,打开控制台hello world是不是出来了。

74310

AS3程序员小福利--as3js介绍及FlashDevelop工程的配置

现在AS3JS纯粹是转换器,但是你可以自由的扩展它,如果你愿意,因为它是开源的。 github项目地址:https://github.com/cleod9/as3js 它是如何工作的?...这意味着所有的AS3特定关键字会被去除,以及将代码重新组织成可在一个JS环境中运行的单个文件。 源代码的输出是可读的,因为它类似于原始AS3代码。没有复杂的结构。...最关键的一点要记住的是,AS3,其核心是JavaScript的语法糖。这意味着,你可以选择你想要的AS3的功能,以用于项目。...我们可以把Main.as修改一下放到src/app目录下。...顺便我们还需要修改一下make.bat as3js -src src -o bin/output.js -e new:app.Main 8.按F5运行,打开控制台hello world是不是出来了。

89760

【汇总】flash单个文件上传

后来整理硬盘的时候,找到了源码,所以决定来个汇总(之前写过的关于flash+js上传文件的例子): 1、定位flash上传出现IO Error #2038的错误 2、as3+php上传图片的三种方式 3、as3...与php 上传单个图片demo 4、as3与php 上传多张图片demo 5、51JS上的“[原创] flash单个文件上传代码+示例” 在这里面,决定把所有的源码:html、js、php、fla、as3...this.mouseEnabled = true 45: } 46: } 47: } 提供给外部仅二个方法来控制按钮是否可以被点击...    flash_url : "",//上传文件的URL地址     upload_url : "",//文件上传的目标地址     post_params : "",//传递的参数...SWFSingleUpload.instance.方法名开头 默认限制上传文件类型为:*.* 说明为All Files 最大上传的文件大小为10*1024字节 Flash提供setValue方法给JS调用,以便传入上述参数

1.1K20

记一个脚本解释器的开发

As3脚本语言,实际上就是ecmascript 262 V4的加强版,也就是说基本上js有的它都有,另外还有java的特性,包含完整的类继承,接口系统,还可以使用js的prototype原型链继承,2方面互不干扰...这两本书读了一下,确实可以自制语言,但是肯定是无法自制如as3这样的大型的语言的。也尝试使用人肉代码解析,发现这根本就没办法进行下去,稍有地方出错,就要大量修改然后自己也搞不清了。...这就是看龙书的收获 四、从语法树到运行时   用了3个月的时间,做到了可以解析几乎任何as3代码的语法树。从一般意义上说,这时候只要顺着语法树执行,就可以跑起代码来了。...扩展as3的语法,加入了yield 也就是说,同样试用yield就可以直接返回一个ienumerator,和C#学的:) h) 支持结构体。准确的说,是可以将.net的结构体对象链接过来在脚本中使用。...跑路了,跑路了 其实当时心里想的是,好吧,历经数年没日没夜的加班日子,终于可以休息了。 九、休息中   。。写点什么吧。嗯。正好又一段时间休息,继续完善脚本解释器。

1.4K70

计算机网络学习笔记-网络层

由此分析:控制平面是集中式的、远程的,便于修改。...”,传输的链路状态分组是第几个版本,TTL “有哪些邻居,到邻居的代价是多少” 通告信息会传遍AS全部(通过泛洪) 在IP数据报上直接传送OSPF报文 (而不是通过UDP和TCP) IS-IS...中新增了X节点(如下图): 当AS3网关路由器3a向AS2的网关路由器2c通告路径: AS3,X 3a参与AS内路由运算,知道本AS所有子网X信息 语义上:AS3向AS2承诺,它可以向子网X转发数据报...或者撤销原路径) KEEPALIVE:在没有更新时保持连接,也用于对 OPEN 请求确认 NOTIFICATION:报告以前消息的错误,也用来关闭连接 问题:一个自治区域(AS1)中的普通路由器如何才能将分组传递到另一个自治区域...区域边界路由器可以通过外部网关协议获知AS2中路由器的存在,并通过内部网关协议通告AS1中所有的路由器。

1.8K20

深入分析select&poll&epoll原理

首先,我们要了解IO复用模型之前,先要了解在Linux内核中socket事件机制在内核底层是基于什么机制实现的,它是如何工作的,其次,当我们对socket事件机制有了一个基本认知之后,那么我们就需要思考到底什么是...处理逻辑,也就是说这个时候我们站在read_process的角度去考虑,只需要关注socket是不是可读状态,如果不可读那么就休眠,如果可读你要通知,这个时候再调用recvfrom去读取数据就不会因内核没有准备数据处于等待...,这个时候只需要等待内核将数据复制到用户空间的缓冲区中就可以了.那么对于read_process而言,要实现复用该如何设计才能达到上述的效果呢?...,但epoll的模式为EPOLLEXCLUSIVE是无法进行操作的 case EPOLL_CTL_MOD: // 修改操作,内核监听到事件变化执行修改 //error...,则一直触发读事件,相当于"不断地询问是否有数据可读" 2) socket发送数据的缓冲区不全满的时候,则一直触发写事件,相当于"不断地询问是否有空闲区域可以数据写入" 本质上就是一个不断进行交流的过程

93231

React Native Android原生模块开发实战|教程|心得

提示:在所有的情况下js和原生模块之前进行通信都是在异步的情况下进行的。 接下来我们就来看下一JS是如何向原生模块传递数据的?...JS向原生模块传递数据: 为了实现JS向原生模块进行传递数据,我们可以直接通过调用原生模块所暴露出来的接口,来为接口方法设置参数。...JS传递数据我们可以借助Callbacks与Promises,接下来就讲一下如何通过他们两个进行数据传递的。...接下来就为大家介绍一种原生模块可以向js多次传递数据的方式: 向js发送事件 在原生模块中我们可以向js发送多次事件,即使原生模块没有被直接的调用。...js模块发送任意次数的事件,其中eventName是我们要发送事件事件名,params是此次事件所携带的数据,接下来呢我们就可以在js模块中监听这个事件了: componentDidMount() {

2K40

Cordova插件使用——Themeablebrowser数据花式交互

Themeablebrowser是一个外部浏览器插件,它fork自inappbrowser,相比于后者,此插件的目的是提供一个可以与你的应用程序的主题相匹配的in-app-browser,以便给你的应用保持一致的外观和感觉...从注入脚本和可用事件提供的信息来看,数据传输是单向的,与http协议无状态概念一致,也就是说一般使用仅是应用主动向浏览器插件发送数据,然后接收回调信息,然而,若想浏览器插件主动传递数据给应用,也不是不可以的...image.png 同时,点击浏览器页面的【接收参数】按钮,也是能正确打印出传递进来的fromAppData 测试插件主动向APP传送数据。 方法还是有不少的,举三种方法抛砖引玉一下: 1....在APP里面修改下面事件监听的代码: ref.addEventListener('loadstop', (event) => { ref.executeScript({ code: "sayHello...,利用自定义原生按钮事件,把数据传递出来。

1.8K40

React Native iOS原生模块开发实战|教程|心得

提示:在所有的情况下js和原生模块之前进行通信都是在异步的情况下进行的。 接下来我们就来看下一JS是如何向原生模块传递数据的?...JS向原生模块传递数据: 为了实现JS向原生模块进行传递数据,我们可以直接通过调用原生模块所暴露出来的接口,来为接口方法设置参数。...: 原生模块向JS传递数据我们可以借助Callbacks与Promises,接下来就讲一下如何通过他们两个进行数据传递的。...接下来就为大家介绍一种原生模块可以向js多次传递数据的方式: 向js发送事件 在原生模块中我们可以向js发送多次事件,即使原生模块没有被直接的调用。...JS模块发送任意次数的事件,其中eventName是我们要发送事件事件名,params是此次事件所携带的数据,接下来呢我们就可以在JS模块中监听这个事件了: import { NativeAppEventEmitter

2K60

那些年我们一起学XSS - 14. Flash Xss入门

使得在寻找真实案例时着实麻烦了不少。但是为了使得本教程足够完善和系统,还是很艰难的找出了一些可以参考的例子。例子本身危害可能不大,但是希望能够借助例子给新手们描述清楚比较基本的东西。...如果你对FLASH有一定了解或者你天资聪慧的话,通过以上地址,你或许能猜到这个FLASH会调用http://v.qq.com/doco/pic.xml这个XML文件的数据,为了看看是什么数据,我们可以使用抓包软件...基于以上基础知识,我们可以先来反编译一下腾讯的FLASH文件,看看是不是上面这样的。 这里用到的反编译软件是 actionscript viewer 2009。...如上图,我们可以看到AS代码具有目录结构,这种是AS3的。如果不是这样目录的样子,则是AS2的代码。 由于我们要定位的是使用到 link 的代码。我们打开保存的as代码,进行搜索。 ?...可以看到,当点击图片时,直接将数据里的link作为参数传递到了 URLRequest中。 11.

77330

请随时准备好,大规模网络攻击随时到来

就在三天之后,印度银行的ATM服务器上就出现了恶意软件,在此次攻击中,攻击者成功从该银行遍布全球的ATM机中非法提了数百万美元。...虽然我们无法完全阻止网络犯罪事件的发生,但是我们可以增加自己在网络安全事件中的“存活几率”,并降低事件所带来的影响。...重要的事情说三遍,在之前的ATM攻击事件中,美国联邦调查局一直强调银行需要对ATM的所有相关活动进行监控,但我们认为组织需要把监控对象的范围扩大化,即监控组织内所有的数字渠道,拿ATM机攻击事件来举个例子...三、在第一时间收到事件通知 确保组织的安全管理人员能够在第一时间收到: 1.潜在的欺诈行为指标,例如不正常的取款交易等等,这个可以通过ATM系统中的网络请求处理频率的变化来判断。...四、禁用ATM的PIN码修改功能 建议各大金融机构禁用ATM的PIN码修改功能,监控电话服务中心的PIN码修改请求,以及其他非金融事件修改请求,例如客户手机号码和家庭住址等信息的修改

42720

Observer模式入门

IObserver 接口 现在我们再来完成IObserver接口,所有的Observer都需要实现这个接口,以便事件发生时能够被 自动告知(自动调用其Update()方法,改变自身状态),它仅包含一个...; } } } 现在可以看到,在Update()方法中,通过传递进来的BoiledEventArgs参数,我们可以获得事件进展(温度),以及事件触发者的信息...接下来我们看这个 BoiledEventArgs是如何传递给 Update()方法的,我们看下SubjectBase基类 和 热水器Heater需要做怎样的修改: public abstract class...推模式的好处是 按需供给,想要提供给 Observer端什么数据,就将这些数据封装成对象,传递给Observer,缺点是需要创建自定义的EventArgs对象。...同时还讨论了实现Observer模式时Subject向Observer提供数据可以采用的两种方式--推模式和拉模式。

65120
领券