I originally tried removeChild(event.target) and got this error

1118: Implicit coercion of a value with static type Object to a possibly
unrelated type flash.display:DisplayObject.

I got the DisplayObject(param) from the help docs in Flash but like I
said, that throws me an error too.

I tried your suggestion of casting it as a sprite or displayobject and
it gives me the same error as DisplayObject(param).

I also tried created a baseContainer sprite and adding and removing
everything from that but it gave me the same errors.

Thanks for your help Ben, I'll keep looking and if you think of anything
else please let me know.

Thanks!

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of ben
gomez farrell
Sent: Thursday, April 26, 2007 11:34 AM
To: [email protected]
Subject: Re: [Flashcoders] removeChild error

Maybe I'm wrong, but I don't think DisplayObject works like that.  You 
could create a new DisplayObject, but I don't think DisplayObject(param)

does anything.  I think you're either creating a new DisplayObject or 
creating a null object, and either way, it's not going to be a child of 
your mySpectrum Sprite.

removeChild(event.target)

should be adequate, but if target needs a little help to know what to be

you can do this:

removeChild(event.target as DisplayObject) or removeChild(event.target 
as Sprite)

Again, maybe I'm wrong, but that's my understanding

Bieniasz, Myles wrote:
> I'm just starting to fool around with as3 and having a little fun with
> computeSpectrum.  I keep getting an error when I try to removeChild.
> I'm using the Flash CS3 trial and setting the document class to
> mySpectrum.  Any help/explanation would be greatly appreciated.
Thanks
> in advance
>
>  
>
> Here's my script:
>
>  
>
> package{
>
>             
>
>             import flash.display.*;
>
>             import flash.media.*;
>
>             import flash.net.*;
>
>             import flash.utils.*;
>
>             import flash.events.*;
>
>             import flash.display.Stage;
>
>             
>
>             public class mySpectrum extends Sprite{
>
>                         
>
>                         private var _s:Sound;
>
>                         private var _sc:SoundChannel;
>
>                         private var _ba:ByteArray = new ByteArray();
>
>                         
>
>                         public function mySpectrum(){
>
>                                     stage.frameRate = 31;
>
>                                     _s = new Sound();
>
>                                     _s.load(new
> URLRequest("bad_plus.mp3"));
>
>                                     _sc = _s.play(0,1000);
>
>
addEventListener(Event.ENTER_FRAME,
> get_spectrum);
>
>                         }
>
>                         
>
>                         private function
get_spectrum(event:Event):void{
>
>  
> SoundMixer.computeSpectrum(_ba,true,0);
>
>                                     graphics.clear();
>
>
graphics.lineStyle(1,0xffffcc,100);
>
>                                     var amp:Number = 0;
>
>                                     for(var i:uint = 0; i<512; i++){
>
>                                                 var level:Number =
> _ba.readFloat();
>
>                                                 amp += level;
>
>                                     }
>
>  
> graphics.drawCircle(stage.stageWidth/2,stage.stageHeight/2,amp);
>
>                                     if(amp > 50){
>
>                                                 drawBurst(amp);
>
>                                     }
>
>                         }
>
>                         
>
>                         private function drawBurst(burst:Number):void{
>
>                                     var burst_sprite:Sprite = new
> Sprite();
>
>  
> burst_sprite.graphics.lineStyle(1,0xffffcc,(burst*.01));
>
>  
> burst_sprite.graphics.beginFill(0xffffcc,(burst*.01));
>
>  
> burst_sprite.graphics.drawCircle(Math.random() * stage.stageWidth,
> Math.random() * stage.stageHeight, burst);
>
>                                     addChild(burst_sprite);
>
>  
> burst_sprite.addEventListener(Event.ENTER_FRAME, fade_out);
>
>                         }
>
>                         
>
>                         private function fade_out(event:Event):void{
>
>                                     event.target.alpha -=.05;
>
>                                     if(event.target.alpha <.1){
>
>  
> removeChild(DisplayObject(event.target));
>
>                                     }
>
>                                     
>
>                         }
>
>                         
>
>             }
>
>             
>
> }
>
>  
>
> And here's the error:
>
>  
>
> ArgumentError: Error #2025: The supplied DisplayObject must be a child
> of the caller.
>
>             at flash.display::DisplayObjectContainer/removeChild()
>
>             at mySpectrum/::fade_out()
>
>  
>
> Myles Bieniasz
>
> MLB Advanced Media
>
> 212.485.6129
>
> [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> 
>
>  
>
>  
>
>
> ************************
> MLB.com: Where Baseball is Always On
>
> _______________________________________________
> [email protected]
> To change your subscription options or search the archive:
> http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
>
> Brought to you by Fig Leaf Software
> Premier Authorized Adobe Consulting and Training
> http://www.figleaf.com
> http://training.figleaf.com
>
>   
_______________________________________________
[email protected]
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com


************************
MLB.com: Where Baseball is Always On


_______________________________________________
[email protected]
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com

Reply via email to