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

Responder a