学习flash脚本应注意的几个问题

转载自:http://blog.sina.com.cn/s/blog_3e38d2cb0100beo0.html

1、加载图片后并不能立即对加载的图片进行操作,必须注册一个侦听器。

   var picLoader:Loader=new Loader();

picLoader.load(new URLRequest("pic.jpg"));
 picLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,picLoad);

function picLoad(e:Event) {

 trace(picLoader.width)}

2、显示对象没有添加到舞台前,是不能对舞台stage注册侦听的。

  如:stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDownEvent);这是会报错的;

应改为 mainTimeline.stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDownEvent);

把主时间轴加上才可以。或者先注册如下的侦听事件也是可以的:

addEventListener(Event.ADDED_TO_STAGE,init);
   function init(e:Event) {
    stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDownEvent);
    stage.addEventListener(KeyboardEvent.KEY_UP,keyUpEvent);
   }

这样似乎更好理解。

3、使用Timer类一张张加载多张图片时,每次都需要申明一个loader类对象;

var picCount:uint=0;

var picTimer:Timer=new Timer(1000);
picTimer.start();
picTimer.addEventListener(TimerEvent.TIMER,timerHandler);
function timerHandler(e:TimerEvent):void {
 var picLoader:Loader=new Loader();//每次加载一张图片后,都需要申明loader对象;
 picCount++;
 picLoader.load(new URLRequest("pic"+picCount+".jpg"));
 picLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,picLoad);
 if (picCount>=7) {
  picTimer.stop();

 }
}
4、在写as外部类文件时,多个类间的沟通和联系是个难点。通常是通过传递参数实现类之间的交互的;

以上仅仅是我学习的一点体会,不对之处,敬请各位老师批评指正。


posted on 2012-02-23 08:45  yang3wei  阅读(167)  评论(0编辑  收藏  举报