作者HudsonE (象象共和國國王)
看板Flash
標題Re: [問題] 請問一下有關 Loader
時間Wed Apr 21 22:58:28 2010
測試結果報告:
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