看板 Flash 關於我們 聯絡資訊
測試結果報告: complete 其實有進去 只是似乎我在 complete listener 中呼叫了錯誤的 function 導致它壞掉... Orz 不過整個程式還是無法顯示 loader 畫出來的結果... 以下是我的 code, 不知可否再次麻煩大家... (用 flex) protected var s: Sprite; protected var ldr: Loader; protected var backBuffer: BitmapData; public function creationComplete(): void { backBuffer= new BitmapData( 800, 600, false); s= new Sprite(); ldr= new Loader(); ldr.contentLoaderInfo.addEventListener( Event.COMPLETE, completeHandler); ldr.load( new URLRequest( "image.jpg")); } public function enterFrame( event: Event): void { backBuffer.draw( s); // <mx:Canvas x="0" y="0" width="100%" height="100%" id="myCanvas" /> myCanvas.graphics.clear(); myCanvas.graphics.beginBitmapFill( backBuffer, null, false, false); myCanvas.graphics.drawRect( 0, 0, this.width, this.height); myCanvas.graphics.endFill(); } protected function completeHandler( event: Event): void { var t: TextField= new TextField(); t.text= "Complete"; s.addChild( t); s.addChild.( ldr); } 結果: 出現 Complete, 其它一片空白 (faint) 我是在懷疑 loader 讀進來的東西是不是不能夠被 BitmapData::draw() 畫出來呀? ※ 引述《aquarianboy (高 見龍)》之銘言: : ※ 引述《HudsonE (象象共和國國王)》之銘言: : : 我知道這可能幾乎是被問爛的問題了 : : 可是它還是困擾了我一整天 = =a 只好上來求助高手... : : 結果是, opening 有跑進去, 但是 complete / io error 都沒發生... (等了大約一分鐘) : : 有可能有這種狀況嗎? 或者是哪些該注意的地方遺漏了 ~"~ : : 麻煩大家了~ : 我剛試了一下,把錯別字改掉之後 : open, io error, complete都抓得到 -- 我是大象 永遠的大象... 象象共和國國王 . Hudson -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.73.236.54
pepsitetsu:你是不是忘了偵聽enterframe 04/21 23:26
HudsonE:應該是有, 因為 Complete 有出現啊 它們在同一個 Sprite裡 04/21 23:32
HudsonE:s.addChild.( ldr); 手誤. 改成 s.addChild( ldr); 04/21 23:37
HudsonE:結果... 連 Complete 都不出來了 = = 04/21 23:37
cjcat2266:那直接addChild(s)看得到東西嗎? 04/21 23:38
HudsonE:看不到... 一樣連 Complete 都沒有, 可能因為我用 FLEX 04/21 23:41
cjcat2266:先確定addChild(s)可以正確顯示東西再draw()吧 04/21 23:47
cjcat2266:噢,Flex component的addChild()都override掉了 04/21 23:47
cjcat2266:所以才會有這樣的問題出現 04/21 23:47
HudsonE:嗯所以我才畫在 BitmapData 上... 但頂多只畫得出 Text... 04/21 23:54