flash as3.0加载并控制外部影片
哪位大侠帮我写一下,只要加载外部影片剪辑b.swf。舞台上有一个按钮bt_mc,单击这个按钮,加载的影片剪辑就播放到第X帧。...
哪位大侠帮我写一下,只要加载外部影片剪辑b.swf。舞台上有一个按钮 bt_mc ,单击这个按钮,加载的影片剪辑就播放到第X帧。
展开
1个回答
展开全部
你也太抠了吧,就给五分?不干。
import flash.display.Loader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.display.MovieClip;
//假如你在外部有个影片s.swf,而且在库中有个元件,链接属性类名为mc,此为一个影片剪辑动画,且在第一帧处加上了stop();
//以下代码可以让你访问外部s.swf影片中的AS3.0定义的对象,你只要重新在新的影片中访问这个对象并实例化就可以控制了。以下是脚本。
var swfurl:String = "s.swf";
var loader:Loader=new Loader();
loader.load(new URLRequest(swfurl));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,onLoaderHand);
function onLoaderHand(evt:Event):void
{
var myClass:Class=evt.target.applicationDomain.getDefinition("mc") as Class;
var s:MovieClip=new myClass;
addChild(s);
s.gotoAndStop(20);
}
import flash.display.Loader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.display.MovieClip;
//假如你在外部有个影片s.swf,而且在库中有个元件,链接属性类名为mc,此为一个影片剪辑动画,且在第一帧处加上了stop();
//以下代码可以让你访问外部s.swf影片中的AS3.0定义的对象,你只要重新在新的影片中访问这个对象并实例化就可以控制了。以下是脚本。
var swfurl:String = "s.swf";
var loader:Loader=new Loader();
loader.load(new URLRequest(swfurl));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,onLoaderHand);
function onLoaderHand(evt:Event):void
{
var myClass:Class=evt.target.applicationDomain.getDefinition("mc") as Class;
var s:MovieClip=new myClass;
addChild(s);
s.gotoAndStop(20);
}
更多追问追答
追问
运行后报错怎么回事啊
=============================
TypeError: Error #1034: 强制转换类型失败:无法将 flash.display::SimpleButton@2aa59941 转换为 flash.display.Loader。
at flash.display::Sprite/constructChildren()
at flash.display::Sprite()
at flash.display::MovieClip()
at _fla::MainTimeline()
==================================
我加50分
追答
说明你按钮有问题
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询