De uma olhada na documentação do EventListener que você vai entender ! Atenciosamente Jean Duarte ----- Original Message ----- From: "Bruno Carneiro" <guimaraescarne...@gmail.com> To: "flexdev" <flexdev@googlegroups.com> Sent: Friday, July 17, 2009 1:03 PM Subject: [flexdev] Re: Saber quando popup vai fechar.
Tentei fazer um pouquinho diferente mas não deu certo. Vejam o código: private function add_marca_click():void{ var pop:cad_marca = cad_marca(PopUpManager.createPopUp (this,cad_marca,true)); PopUpManager.centerPopUp(pop); //pop.addEventListener("cad_marca_fechar",function (event:Event):void{ // this.marcaRemote.getMarcas(); //}); pop.addEventListener("cad_marca_fechar",this.teste); } private function teste(event:Event):void{ this.marcaRemote.getMarcas(); } Do jeito que está ai, usando a função teste, funciona perfeitamente. Mas se eu usar o código comentando ( e comentar o uso da função teste ) o código não funciona embora não apresente nenhum erro. Dessa outra forma seria muito mais organizado para mim, alguém saberia me explicar pq não está funcionando da forma q eu queria? On 17 jul, 12:19, Bruno Carneiro <guimaraescarne...@gmail.com> wrote: > Muito obrigado, funcionou perfeitamente. > > Bem simples, eu pensei que para usar eventos eu teria que criar uma > classe que herdasse a classe Event e etc... > mas vi que é bem simples. > > Obrigado. > > On 17 jul, 10:09, "Jean Mariano Duarte" <j...@melim.com.br> wrote: > > > Bom dia, > > > Na hora que vc criar seu PopUp coloca um listener para ficar escutando > > quando for disparado do lado na Janela do PopUp. > > > E depois a função "funcaoaexecutar()... faz o que vc quiser para > > atualizar o > > combo.. > > > Assim: > > pop.addEventListener("quando_fechar", this.funcaoaexecutar); > > > private function funcaoaexecutar(event:Event):void{ > > > faz o que vc quiser.... > > > } > > > Dentro do seu script que controla o PopUp depois de gravar os dados na > > Base... > > > this.dispatchEvent(new Event("quando_fechar")); > > PopUpManager.removePopUp(this); > > > Ai ele vai criar um evento quando_fechar, que fica escutando o pelo > > listener... > > e executa sua função funcaoaexecutar > > > Algo assim.... digite os dados por causa dos imports em vez de copiar e > > colar... > > > Atenciosamente > > Jean Duarte > > > ----- Original Message ----- > > From: "Bruno Carneiro" <guimaraescarne...@gmail.com> > > To: "flexdev" <flexdev@googlegroups.com> > > Sent: Friday, July 17, 2009 9:48 AM > > Subject: [flexdev] Saber quando popup vai fechar. > > > Gente, estou querendo pesquisar uma forma de saber quando a popup foi > > fechada. > > > Estou criando a popup assim: > > var pop:cad_marca = cad_marca(PopUpManager.createPopUp > > (this,cad_marca,true)); > > PopUpManager.centerPopUp(pop); > > > Eu precisava de alguma forma vigiar essa variavel pop para saber > > quando ela foi fechada mas não sei nem por onde começar... > > > Tenho que pesquisar eventos? > > Ou existe alguma saída mais simples? > > > Recentemente usei um método BindingUtils.bindSetter que fica vigiando > > quando uma propriedade de um controle muda. Existe algo parecido com > > isso que eu possa usar na minha variavel pop para saber quando ela foi > > fechada? > > > Tudo isso pq na minha tela tenho um combo cujas opções vem do banco. > > Mas caso não tenha sido cadastrada a opção desejada, do lado tem um > > botão ("+") que abre esse popup de cadastro. Porém depois que a pessoa > > faz o cadastro e fecha o popup o combo não é atualizado, embora o > > cadastro seja feito com sucesso. Então preciso de que quando alguém > > clicar para fechar o popup o combo atualize. Só que não posso fazer > > isso no evento close do popup pq esse mesmo popup é usado em outras > > telas e nem sempre esse comportamente é desejado. > > > Seria viável fazer algo do tipo: No close do popup colocar uma > > condiçõa > > > - Se o componente pai deste componente for "TAL" > > - - Atualizar campo > > - se não > > - - Outra coisa. --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---