首页  |  精品网站  |  原创作品秀   |  艺术设计  |  网络学院  |  信息中心  |  站内搜索  |  求职招聘  |  建站资源  |  服装网站  |  编程开发 |  设计论坛 
  平面设计 画册 VI欣赏 包装 CG-插画   酷站 个人网页 商业网站   Alexa排名 CSS 建站资源 下载专区 JS特效 品牌服装 服装院校   专题欣赏 SEO 图标欣赏
域名注册 虚拟主机 广州网站建设 广州网页设计 IDC赞助 设计资源下载 虚拟主机 域名注册 品牌网站建设 服装品牌网站建设 广告服务 网站推广 娱乐
当前位置:首 页 >> 网络学院 >> Flash ※ FreeHand >> Flash片头loading与MovieClipLoader

Flash片头loading与MovieClipLoader


中资源
转载请注明出处-中国设计秀-cnwebshow.com


  2、找四张100*100像素的缩略图片。
  3、建立一个动态文本框,大概在300*300像素左右,使用12号字体,并使之现实边框,这样我们更好监测。别忘了设置它为多行的。
  4、建立一个100X100像素的矩形,转变为MC,然后将它移出场景。这时候,他已经出现在库中了。在库中,设置他的链接名为“img”,并使其“在第一帧导出”。其实这个矩形会在外部资源载入的时候被取代,现在只是为了调试方便。
  5、在刚才放置textBox文本框的层之上新建一层,这一层用于放置我们的代码,先写上:
  

stop();

  6、现在我们定义一个MCL的实例,此外定义一个基本对象,作为我们的侦听器:
  

myMCL = new MovieClipLoader(); //define MovieClipLoader
myListener = new Object(); //define listener

  7、接下来我们用侦听器来侦听onLoadComplete事件,该事件的作用上文已经提到了。我们现在把它交给listener对象,而不是MCL实例。当然,最终要把侦听器对象再交回MCL(以侦听其回调函数)的时候,得到的效果就是我们需要的效果了。

  记住,只有当读取完毕的时候,对MC部署事件任务才是安全可靠的!所以,在onLoadComplete被触发的时候才部署这个onPress事件给MC:

  

myListener.onLoadComplete = function(targetMC){
 debug.text += "LOADING OF " + targetMC
 + " COMPLETE" + newline;
 targetMC.onPress = function() {
 debug.text += newline
 + "targetMC = " + targetMC._name;
 }
}

  注:上述代码中有几行被人为打断,但这并不影响效果。

  你也许已经注意到了,MC的实例名称在onLoadComplete被触发的时候是作为一个参数的身份传递给onLoadComplete的,这样我们控制这个MC就非常方便了。比如这里就可以用点击MC来检测事件是否被成功部署给MC。

  8、现在我们建立一个函数,它包含一个简单的循环来部署场景上的MC。并且及时地为每一个部署好的MC分配读取外埠资源的任务(loadClip方法),代码如下:

  

function initClips(){
 for (i=1; i<=4; i++){
 this.attachMovie("img", "img" + i, i);
 this["img"+i]._x = i*110;
 myMCL.loadClip("0" + i + ".jpg" ,
 this["img"+i]); //code wrapped
 }
}

  9、到这里基本上就完成了。现在我们剩下的工作就是注册侦听器并且按照需求调用相关函数、方法,反映到代码上就是以下两行:

  

myMCL.addListener(myListener);
initClips();

  注意这里的顺序,我们的侦听器对象在调用initClip()函数之前就被作用于MCL实例了。现在我们的MC的onPress事件可以顺利工作了,因为当图片被完全读入之后,事件才被分配过去。我们的代码也非常简洁。我们再也不用为了loading而去制作麻烦的循环了,MovieClipLoader帮我们完成了所有工作!

  附:完整代码如下:

  

  stop();
myMCL = new MovieClipLoader();
myListener = new Object();
myListener.onLoadComplete = function(targetMC)
{
  targetMC.onPress = function ()
  {
    trace("pressed");
  }
}

  function initClips()
{
  for (i=1;i<=4;i++)
  {
    this.attachMovie("img","img"+i,i);
    this["img"+i]._x = i*110;
    myMCL.loadClip(url,this["img"+i]);
  }
}
myMCL.addListener(myListener);
initClips();

  

  到此为止,你应该相信MCL确实是一个不可多得的好东西了吧?



<< 1 2 3 4 >>
转载请注明出处-中国设计秀-cnwebshow.com



投稿 】【对本文进行评论】 【字体: 】【发布于2007-10-11 09:31】

相关专题:暂无相关专题

上一篇:this的使用   下一篇:让 Flash 广告具有记忆功能
 认证LOGO下载
     
Copyright © 2005-2007 中国设计秀_网页设计教程_优秀网页设计欣赏_平面设计欣赏 All Right Reserved.
做最专业的设计服务网站,秀出自我,秀出精彩!中国设计秀,秀---无处不在!!
QQ:54292427  8208442 MSN:kingvisual#hotmail.com 交流群:9107036 3848215 8850631
粤ICP备05067046号 RSS