Obrigado pelas respostas. Leonardo, não cheguei a testar este método, mas resolví de uma forma direferente. No handler faço algo assim:
var frmInf:FrmInformativos; cnvInformativos.removeAllChildren(); //removo todos os filhos do canvas frmInf = new FrmInformativos(); //instancio novo componente cnvInformativos.addChild(frmInf); //adiciono novamente ao canvas Desta forma o init do componente sempre será executado no handler. Depois vou testar com o override. Tks. On 29 dez, 13:32, Leonardo Cabral <leonardo.cab...@dclick.com.br> wrote: > Dependendo do que faz o seu init, vc pode chamar dando um override na > function "initialized", pois quando vc "instancia" ela pelo xml, pois se não > me engano, ela não passa no cosntrutor do actionscript. > > override public function initialized(document:Object, id:String):void > { > super.initialized(document, id); > init(); > > } > > att, > Leonardo Cabral > > Em 29 de dezembro de 2010 13:14, Leonardo Oliveira < > leonardoc.olive...@gmail.com> escreveu: > > > > > não é uma nova tela, é um viewstack, ou seja, é na mesma tela. > > > On 29 dez, 11:46, William Lima <williamlim...@gmail.com> wrote: > > > Se for uma nova "tela" você poderá utilizar o PopUpManager! > > > > Em 29 de dezembro de 2010 09:37, Leonardo Oliveira < > > > leonardoc.olive...@gmail.com> escreveu: > > > > > Como posso inicializar um componente no click de um botão? > > > > > Resumidamente tenho o seguinte cenário: > > > > > /* > > > > * aplicativo_1.mxml > > > > */ > > > > //canvas com o componente > > > > <mx:Canvas id="cnvInformativos"> > > > > <ns3:FrmInformativos id="frmInformativos" /> > > > > </mx:Canvas> > > > > > //botão que abre o canvas > > > > <mx:Image id="imgComunicacaoInterna" > > > > click="abrirComunicacaoInterna()" /> > > > > > //handler > > > > private function abrirComunicacaoInterna(evt:MouseEvent):void{ > > > > //aquí gostaria de inicializar o componente > > > > viewstack1.selectedChild = cnvInformativos; > > > > } > > > > > /* > > > > * FrmInformativos.mxml > > > > */ > > > > //mas ao invés disso estou inicializando o componente no construtor do > > > > mesmo: > > > > public function ClassFrmInformativos(){ > > > > super(); > > > > this.addEventListener(FlexEvent.CREATION_COMPLETE, init); > > > > } > > > > > Da forma com que demonstrei, o componente é inicializado na > > > > inicialização do aplicativo_1.mxml, e não quando o usuário clicar no > > > > menu para abrir o componente. Ou seja, estou carregando dados > > > > desnecessários na aplicação, dados estes que deveriam ser carregados > > > > apenas no click do menu. > > > > > Espero que tenha sido claro. > > > > > -- > > > > 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 emhttp://groups.google.com/group/flexdev > > > > -- > > > *William de Farias Lima* > > > Desenvolvedor - FCM Sistemaswww.fcmsistemas.com.br > > > williamlima @fcmsistemas.com.br > > > -- > > 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 emhttp://groups.google.com/group/flexdev > > -- > Leonardo Cabral > Tel. +5511 2224.6750 > D-Click Web & Mobile Solutions > leonardo.cab...@dclick.com.brwww.dclick.com.br/blogwww.dclick.com.br -- 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