본문 바로가기

AS

외부 SWF파일 사용하기

    public function RuntimeAssetExplorer()
    {
            var path:URLRequest = new URLRequest("GeometricAssets.swf");
            //LoaderContext 클래스는, Loader 클래스를 사용해, SWF 파일등의 미디어를
           // 로드하는 옵션을 지정합니다.
            var context:LoaderContext =
                                      new LoaderContext(false, ApplicationDomain.currentDomain);
            var loader:Loader = new Loader();
            loader.contentLoaderInfo.addEventListener
                                                       (Event.COMPLETE,runtimeAssetsLoadComplete);
            loader.load(path,context);
    }

    //위에서 GeometricAssets.swf를 로드하고 있는데...
   //이 이벤트리스너에서는 어떤 타입인지 모르므로 event.target.content를 * 으로 받아주고
   //있고 실제 ra 변수는 GeometricAsset 클래스이고 그 멤버함수인 getAssets() 을 이용,
   // 데이터를 받아오고 있다.
    private function runtimeAssetsLoadComplete(event:Event):void
    {       
            // 모든 형태를 다 받아주는 *, AS2 에서는 object 라고 한다..
            var ra:* = event.target.content;
            populateDropdown(ra.getAssets());

            btn1.label = "Add";
            btn1.addEventListener(MouseEvent.CLICK, addAssetToStage);
    }