Uma sugestão Michael, troca este if que testa alguns tipos de containers por uma mais genérico, isto é,
em lugar de: if ( (componente is Panel) || (componente is Module) || (componente is HBox) || (componente is ControlBar) ) Você usa: if ( componente is Container ) Daí vc não precisa se preocupar com o tipo de Container. hth julio On Apr 13, 9:38 am, Michael Antunes <michaelantu...@terra.com.br> wrote: > E ai pessoal, criei dentro da classe AcessaComponente uma rotina que > lista todos os componentes de um container, no meu caso o container > inicial que estou setando é um module. dentro deste module tenho esta > estrutura. > > <mx:Module xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" > width="400" height="300"> > <mx:Panel layout="absolute" title="Parâmetros" top="10" id="pnl" > left="10" right="10" bottom="10"> > <mx:Label x="10" y="10" text="Dias sinalização última compra:" > id="lblNome"/> > <mx:NumericStepper id="nsDiasUltCompra" x="201" y="8"/> > <mx:HBox id="hBox" verticalAlign="middle" > horizontalAlign="center"> > <mx:Button label="Gravar" width="100" > id="btnGravar"/> > <mx:Button label="Cancelar" width="100 > id="btCancelar"/> > <mx:Button label="INITI" click="init()" id="btInit"/> > </mx:HBox> > <mx:ControlBar> > <mx:Button id="BT1"/> > <mx:Button id="BT2"/> > <mx:Button id="BT3"/> > </mx:ControlBar> > </mx:Panel> > > <mx:Script> > <![CDATA[ > private function init():void { > var acComp:AcessaComponente = new AcessaComponente(); > acComp.verificaComponente(this); > } > ]]> > </mx:Script> > > </mx:Module> > > CLASSE AcessaComponente > > public function verificaComponente(componente:Object):void { > if (componente is Button) { > Button(componente).enabled = false; > } > if ( (componente is Panel) || (componente is Module) || > (componente > is HBox) || (componente is ControlBar) ) > { > for (var i:int = 0; i < componente.numChildren; i++) { > verificaComponente( > Container(componente).getChildAt(i) ); > } > } > } > > A função init chama a função setando o Modulo. O Problema é o > seguinte.. ele encotra, dentro do if todos os componentes, menos o > ControlBar. Alguem sabe porque? > > Obrigado! --~--~---------~--~----~------------~-------~--~----~ Você recebeu esta mensagem porque está inscrito na lista "flexdev" Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com Para sair da lista, envie um email em branco para flexdev-unsubscr...@googlegroups.com Mais opções estão disponíveis em http://groups.google.com/group/flexdev -~----------~----~----~----~------~----~------~--~---