Containers are really containers of UIComponents (Flex stuff only). 
You could add to rawChildren, but I think what Jason did is a better
idea.  He created a UIComponent, and then just added the non-Flex
component to that.

-Ryan

--- In flexcoders@yahoogroups.com, "Daniel Thompson" <[EMAIL PROTECTED]> wrote:
>
> Was this ever resolved? I seems like it's not the right behavior. If
it is,
> how would Jason accomplish his goal (and I know the answer isn't
> FlexBitmap...) Is it off to rawChildren?
> 
> 
> 
> > Can anyone see the error in this setup?
> >  
> > //drawTest.mxml file:
> >  
> > <?xml version="1.0" encoding="utf-8"?>
> > <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml 
> > <http://www.adobe.com/2006/mxml> " layout="absolute" 
> > applicationComplete="init()" backgroundColor="0xFFFFFF">
> >  <mx:Script>
> >   <![CDATA[
> >    import src.DrawBitmap;
> >    private function init():void
> >    {
> >     var spiral:DrawBitmap = new DrawBitmap(myCanvas);
> >    }
> >   ]]>
> >  </mx:Script>
> >  <mx:Canvas id="myCanvas" x="10" y="10"  width="774" 
> > height="463" borderColor="0xD4001A" borderStyle="solid"/> 
> > </mx:Application>
> > 
> >  
> > // DrawBitmap.as class:
> >  
> > package src
> > {
> >  import mx.containers.Canvas;
> >  import flash.display.BitmapData;
> >  import flash.display.Bitmap;
> >  import flash.geom.Rectangle;
> >  
> >  public class DrawBitmap
> >  {
> >   private var _canvas:Canvas;
> >   private var _bitmap:Bitmap;
> >   private var _imgData:BitmapData;
> >   
> >   public function DrawBitmap(canvas:Canvas):void
> >   {
> >    _canvas = canvas;
> >    _imgData = new BitmapData(20, 20, false, 0xFF00FF00);
> >    _imgData.fillRect(new Rectangle(5, 5, 10, 10), 0xFF0000FF);
> >    _bitmap = new Bitmap(_imgData);
> >    _canvas.addChild(_bitmap);  //Produces error
> >   }
> >   
> >  }
> > }
> >  
> > At runtime, I get this error in the debugger:
> > TypeError: Error #1034: Type Coercion failed: cannot convert 
> > flash.display::[EMAIL PROTECTED] to mx.core.IUIComponent.
> > at 
> > mx.core::Container/http://www.adobe.com/2006/flex/mx/internal:
> > :addingChild()[C:\dev\GMC\sdk\frameworks\mx\core\Container.as:3303]
> > 
> > Seems to appear on the last line of the DrawBitmap class when 
> > I do _canvas.addChild(_bitmap).  That seems legal to me - add 
> > a bitmap display object to a canvas display object.  No?  
> > What am I missing?  If that's not legal, then how to add my 
> > bitmap object to the canvas?
> >  
> > Thanks,
> >  
> > 
> > Jason Merrill 
> > Bank of America 
> > L&LD GT&O 
> > eTools & Multimedia Research & Development 
> >
>


Reply via email to