Make sure the dynamically added component has a non-zero height and width.
Tracy ________________________________ From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of Jason C Reynolds Sent: Wednesday, April 25, 2007 6:01 PM To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] addChild problems Does not work just means it isn't showing up on screen - something is wrong with how I am adding stuff to the display list. MainApp has the canvas object, and the content object -> creates an instance of any class that extends my ContentTemplate class. I don't see why canvas.addChild(contentObject) does not work. Passing a reference of that canvas to the constructor, then canvasReference.addChild(anyObject) works. So in MainApp I have something like this: contentHolder = new Canvas(); this.addChild(contentHolder); contentScreen = new SampleScreen(contentHolder); // SampleScreen extends a template class that extends UIComponent Inside SampleScreen: question = new Text(); question.text = "some text"; contentHolder.addChild(question); All this works.... But, with all these classes that are going to extend SampleScreen I really don't want to pass that reference to contentHolder around. What is confusing me, is why I couldn't do this: MainApp contentHolder = new Canvas(); this.addChild(contentHolder); contentScreen = new SampleScreen(); contentHolder.addChild(contentScreen); // HERE is what I want to work, contentScreen extends UIComponent - so in my mind it should work (show up on screen). SampleScreen question = new Text(); question.text = "some text"; this.addChild(question); // HERE is the other change from the working version. Since SampleScreen extends UIComponent, and above I have added it to the canvas' display list, why is it not showing up? Thanks much for looking... Jason ----- Original Message ----- From: Manish Jethani <mailto:[EMAIL PROTECTED]> To: flexcoders@yahoogroups.com <mailto:flexcoders@yahoogroups.com> Sent: Wednesday, April 25, 2007 4:11 PM Subject: Re: [flexcoders] addChild problems If you can show the heirarchy of your objects and which one you're trying to add that's failing, that'll help. Also explain what "does not work" means (do you get an error?). On 4/26/07, Jason C Reynolds <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > wrote: > > > Sorry for the vauge subject... here's what I'm trying to do that does not > work. > > I am creating a MainApp class instance in my mxml project file. I want to > use this to control the basic common stuff throughout the application, and I > have made an instance of a Canvas object that I will be using as a container > to the constantly changing part of the screen. I made a ContentTemplate > class that extends UIComponent (I had problems with addChild in actionscript > before I realized if it's not pure as3 it needs to be a UIComponent to > work). From this ContentTemplate class, I have created several classes that > extend it and want to use addChild/removeChild to change that canvas part of > the program. > > So, in MainApp I have a variable contentScreen of type ContentTemplate. Lets > just say all ContentTemplate is doing is making a new text control. I tried > to make this text control in the ContentTemplate, and since it is extending > UIComponent - I thought just a this.addChild would work... Then in mainApp > just add it to the display list of the Canvas object. This does not work. > > If I pass a reference to that canvas object in the constructor, then > addChild from there it works. > > Hopefully I somewhat clear what I'm trying to do - and anyone have any > suggestions why this would not work? > > Thanks for any response, Jason > > > >