2013-02-01 31 views
1

在flash中調用外部swf文件和圖片庫im使用加載器來完成它,它的工作方式除了一件事情之外它打開swf在我的主Flash文件的頂部,而不是一個單獨的窗口。我還需要做一個後退按鈕,讓我回到我的主Flash頁面,我不太確定如何做到這一點。在flash中加載圖片庫加載在我的主Flash頁面

我需要一些幫助,我真的很苦惱這個裝載機的東西。這是加載程序的代碼。就像我說的它的工作原理,當我點擊按鈕它帶mes到SWF文件。

var loadedSWF:Loader = null; 
function loadSWF(file:String, container:MovieClip=null):void 
{ 
if(container == null) container = MovieClip(root); 

// removes the previously loaded SWF 
if(loadedSWF != null) 
{ 
    if(loadedSWF.parent) loadedSWF.parent.removeChild(loadedSWF); 
} 

var req:URLRequest = new URLRequest("imagegallery.swf"); 
loadedSWF = new Loader(); 
loadedSWF.load(req); 

addChild(loadedSWF); 
} 
imageGallery_btn.addEventListener(MouseEvent.CLICK, _click); 
function _click(e:MouseEvent):void 
{ 
loadSWF("myfile1.swf"); 
} 
} 
+0

那麼你是說SWF被加載到電影上而不是單獨的窗口?因爲如果是這樣的話,除非你製作Flash網站,否則這對AS3來說是不可能的。 – David

+1

其難以解釋。它沒有在瀏覽器窗口中打開,它只是在主fla文件的頂部打開swf文件。即我的主要fla是jack.fla和我的圖片庫是imagegallery.swf,當我點擊我的圖片庫按鈕時,它會打開我的fla文件頂部的swf,繼續播放 – Jack5848

+0

我只將這個應用於gallery.swf,但當我點擊主頁等或其他導航鏈接時,gallery.swf仍然在前面,主頁或其他內容出現在後面。有誰知道如何解決這個問題?謝謝。這個 – Jack5848

回答

0

這實際上是它應該工作的方式。如果你想在一個新的「窗口」中打開圖庫,你需要使它看起來像是一個新窗口。當你致電

addChild(loadedSWF); 

你實際上是在告訴loadedSWF加入舞臺。將它添加到一個不同的動畫片段,你會使用這個語法:

whateverMovieClipName.addChild(loadedSWF); 

其中whateverMovieClipName是您要添加的外部SWF太影片剪輯的名稱。