快速业务通道

通过实例学习flash AS3.0——案例二

作者 凌众技术 来源 网页制作 浏览 发布时间 2012-03-10

相关文章:通过实例学习AS3.0 --案例一

首先声明:本人大菜鸟一个,刚接触AS3不久,许多理念还没来得及灌输,这些case都是从网上down的,但因为解说是英文的,不利我们学习,我就充当一个translater,顺便可以让自己巩固一下知识。

水平有限,错误难免,欢迎大虾小虾,大鸟小鸟指正。

下面进入正题:

案例2:熟悉addChild和removeChild在不同的swf之间的运用,以及loader的用法

说明:点击picture会载入另一个swf,点击载入的swf上的一个按钮,该swf消失。

演示:http://www.live-my-life-with-yuyi.com/as3_cases/different_movies/

代码:

swfA(也就是按钮所在的flash)

var loader:Loader = new Loader();
loader.load(new URLRequest("Popup.swf"));
picture_btn.addEventListener(MouseEvent.CLICK, showPicture);
function showPicture(event:MouseEvent):void
{
    addChild(loader);
}

AS3里用loader代替了loadMovie,load的时候不能直接添加路径名,需要通过URLRequest来载入。

整段代码都很简单,首先载入Popup.swf,然后给监听按钮的click事件定义一个showPicture函数,这个函数的功能很简单,通过addChild把刚刚载入的swf放到舞台上。

swfB(载入的flash->Popup.swf)

close_btn.addEventListener(MouseEvent.CLICK, closeWindow);
function closeWindow(event:MouseEvent):void
{
    this.parent.parent.removeChild(this.parent);
}

很简洁,监听close按钮的click事件,事件触发时调用closeWindow函数,这里用到了parent,简单分析一下,由于这个swf已经被载入到另一个swf里,所以this.parent应该指代的是loader,而this.parent.parent则指代的是TimeLine0,也就是舞台。所以这句话也就比较好理解了:从舞台上卸下载入该swf的loader。

案例2分析到此结束。

源文件下载

 

 

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号