摘要:
类似C#中自定义事件需要一个自定义的EventArgs子类一样,AS3也需要开发者自定义一个Event类的子类,这里我们假设一种场景:设计一个Person(人物)类,里面有Age(年龄),Name(姓名),我们希望每当Person类的实例Age(年纪)发生变化时,能触发一些自定义事件,从而调用某些特定的处理方法。 1.先设计Event类的子类AgeChangeEvent view source ... 阅读全文
摘要:
如果想在一个自定义类中注册对stage对象的监听事件,然后在另一个文档类中使用该类的实例(或在fla的时间轴上使用该类的实例),你会很郁闷的发现:在构造函数中始终无法引用到this.stage(用trace(this.stge)会一直返回null),既然引用都得不到,当然也就无法注册事件了,正确的做法如下: view source print? 01 package{ 02 03 impor... 阅读全文
摘要:
AS3历经若干年的成长,已经完全进化为一门面向对象的(动态)语言,但很多介绍AS3的书籍上往往只注意了AS3语言本身,而淡化了如何跟Flash IDE协同开发。 1.如何在Flash时间轴代码上创建一个外部as文件中定义的MovieClip实例? 假设外部有一个MyClip.as文件,内容如下: view source print? 1 package { 2 import flash.... 阅读全文
摘要:
题外话:个别朋友总是问我同样的问题,做为一名c#/silverlight程序员为啥还要学flash ? 回 答:看日本片时,就不能对照看欧美的么? 不体会日本的细腻,又怎能感觉到欧美的粗放;同样都是web相关的技术,不必报门户之见;何况这二者有很多可以相互借鉴的东西。 注:这个例子来自[FL车在臣](在blueidea上又名“寂寞火山”)翻译的“Animation in ActionScrip... 阅读全文
摘要:
对象拖拽: 这其实就是以前所学知识:Flash/Flex学习笔记(13):对象拖动(startDrag/stopDrag) + Flash/Flex学习笔记(23):运动学原理 的综合运用,要提一下的是下面代码中对于EnterFrame的添加与移除操作 view source print? 01 package { 02 import flash.display.Sprite; 03 im... 阅读全文
摘要:
对于从Sprite类继承来的对象,要实现拖放当然是Flash/Flex学习笔记(13):对象拖动(startDrag/stopDrag) 里讲的方法最方便,但是对于不是从Sprite类继承得来的对象,这startDrag/stopDrag是不能用的,这时候只能采用最通常用做法:利用Mouse_Down,Mouse_UP,Mouse_Move事件来处理 注意:对象的Mouse_Move事件,只有当... 阅读全文
摘要:
虽然label组件很好用,但是达人们都好象不太喜欢用组件(用组件后最明显的问题:会使swf文件增大好多),所以我也慢慢开始习惯能不用组件则尽量不用 view source print? 01 import flash.events.Event; 02 import flash.events.MouseEvent; 03 04 var flag:int = 0; 05 06 txtMsg.te... 阅读全文
摘要:
在开发过程中,经常会遇到要从一个界面跳到另一个界面的情况,比如:软件中的窗口跳转,web开发中的页面跳转...但在Flash的世界里:只有帧,没有窗口与页面,所以控制时间轴/帧之间的跳转,就成为这一需求最常见的解决办法 view source print? 01 btn1.addEventListener(MouseEvent.MOUSE_DOWN,function(){md.gotoAndP... 阅读全文
摘要:
在一些实时视频或视频分享应用中,需要动态显示麦克风的音量大小,或者检测视频是不是正在播放,这里演示一种简单的音量指示器 1.先写一个指示器类 其实就是一个根据百分比来填充的矩形 view source print? 01 package { 02 import flash.display.Sprite; 03 04 //音量指示器(by 菩提树下的杨过 http://yjmyzz.cnbl... 阅读全文
摘要:
直接上代码吧,关键地方都加上注释了: view source print? 01 var cm:ContextMenu=new ContextMenu(); 02 cm.hideBuiltInItems();//隐藏系统内置的菜单 03 04 //创建菜单项(构造函数参数含义:标题名字,前面是否增加分割线,是否可用,是否可见) 05 var menuItems:Array = [ 06 ne... 阅读全文