2013-10-26 75 views
1

我想在用戶使用AS3點擊按鈕時上傳圖片。我在舞臺上有一個按鈕和一個進度條。這是相關代碼:使用AS3加載圖片問題

var myLoader:Loader = new Loader(); 

myPB.source = myLoader.contentLoaderInfo; 

btn_one.addEventListener(MouseEvent.CLICK, btnImage); 

function btnImage(event:MouseEvent):void{ 
    myLoader.load(new URLRequest("MyPic.jpeg")); 
    addCild(myPB); 
    removeChild(myPB); 
    btn_one = null; 

myLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, finishImage); 
    function finishImage(event:Event):void{ 
     addChild(myLoader); 
     removeChild(myLoader); 
     btn_one = null; 

當我執行這個錯誤出現錯誤#2044的代碼:未處理的IOErrorEvent :. text = Error#2035:URL Not Found 任何想法是我錯了?

+0

支票影像」的路徑,可能是‘MyPic.jpg’,而不是‘MyPic.jpeg’ – Cherniv

+0

它也沒有關係,但對於小費,呼叫負載之前添加事件偵聽器.. –

+0

我認爲你的錯誤來自「myPB.source = myLoader.contentLoaderInfo;」不是從你的裝載機。點擊或初始化時拋出的錯誤是什麼? – mika

回答

0
var myLoader:Loader = new Loader(); 

//myPB.source = myLoader.contentLoaderInfo; 

btn_one.addEventListener(MouseEvent.CLICK, btnImage); 

function btnImage(event:MouseEvent):void{ 
    myLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, finishImage); 
    myLoader.load(new URLRequest("MyPic.jpeg")); 
    //addCild(myPB); 
    //removeChild(myPB); 
    btn_one = null; 
} 

function finishImage(event:Event):void{ 
    addChild(myLoader); 
    //removeChild(myLoader); 
    btn_one = null; 
} 

這應該起作用。我不知道你想要添加一個Child並在之後直接刪除同一個孩子。

希望這有助於

+0

謝謝你的DJ!它工作得很好。 –