?? sampleloadswf.as
字號(hào):
?package org.kingda.book.display
{
import flash.display.Sprite;
import flash.display.Loader;
import flash.display.MovieClip;
import flash.events.Event;
import flash.net.URLRequest;
import flash.system.ApplicationDomain;
import flash.display.LoaderInfo;
public class SampleLoadSWF extends Sprite
{
private const FILE_PATH:String = "fla/MotionXML.swf";
private const CLASS_NAME:String = "Ball";
private var loader:Loader;
private var request:URLRequest;
public function SampleLoadSWF() {
loader = new Loader();
request = new URLRequest(FILE_PATH);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
loader.load(request);
}
private function onComplete (event:Event):void {
var loadedSWFInfo:LoaderInfo = event.target as LoaderInfo;
var domain:ApplicationDomain = loadedSWFInfo.applicationDomain as ApplicationDomain;
//從加載的SWF域中提取類定義
var BallClass:Class = domain.getDefinition (CLASS_NAME) as Class;
var ballA:MovieClip = (new BallClass()) as MovieClip;
var ballB:MovieClip = (new BallClass()) as MovieClip;
ballA.x = 0,ballA.y = 100;
ballB.x = 100, ballB.y = 100;
ballB.scaleX = 2;
addChild (ballA);
addChild (ballB);
var loadedSWF:MovieClip = loadedSWFInfo.content as MovieClip;
trace(loadedSWF == loader.content);
//輸出:true
//表明contentLoaderInfo.content與loader.content確實(shí)一樣,指向被加載SWF主類對(duì)象
trace (loadedSWF.welcomeString);
//輸出:哈哈,你訪問(wèn)到被加載的SWF腳本了。
//這說(shuō)明訪問(wèn)到了MotionXML.swf主時(shí)間軸定義的 var welcomeString
//同理,也可訪問(wèn)其他子顯示對(duì)象或其他腳本也是
addChild(loadedSWF); //將加載的SWF對(duì)象加入顯示列表,這是才會(huì)在屏幕顯示出來(lái)。
}
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -