Se quiser *criar um evento proprio,* tudo bem.. funciona... mas se é só ao
FECHAR, entao já use o evento CLOSE mesmo:

private function janOdescontos():void
{
 var janela:popOdescontos = PopUpManager.createPopUp( this, popOdescontos,
true ) as popOdescontos;

 *janela.addEventListener(CloseEvent.CLOSE, atualizar);*
 janela.init()


}


agora, no seu método atualizar() vc precisa adicionar um parametro que é
passado automaticamente para o método invocado pelo evento em questao

public function atualiza(*event:CloseEvent*):void { .... }


Ok.. agora, vamos avançar um pouco + =D
O pq desse parametro "event:CloseEvent"?

Ele serve para q vc possa receber informações e até mesmo a instancia do
objeto que disparou o evento. O parametro é passado automaticamente pelo
runtime no momento da execução. Mas... como todo método "atualizar", fica
estranho vc ter q passar um parametro toda vez q vc for chamar o método...
pq agora q vc alterou a assinatura dele, vc *obrigatoriamente* tem passar um
valor. A maioria das pessoas, nesse caso, chamariam o método assim:
atualiza(null) .. uma vez q o parametro "event" nao serve pra nada mesmo.

MMMMasssss... se vc for um cara mais "malicioso", vc poderia fazer o
seguinte: Parametros Opcionais! Mude a assinatura para:

public function atualiza(*event:CloseEvent=nulll*):void { .... }

Uma vez q o paametro está ali só para manter a padronizacao do runtime, e
DESDE QUE o event NUNCA seja usado dentro do escopo do método, então vc não
precisa informá-lo obrigatoriamente. Dessa forma vc pode continuar a chamar
o método* atualizar() ou atualiza(null) *que sempre vai funcionar.


Espero q tenha compreendido =D

(Achou essa informação útil? Entao colabora aqui: www.flexforkids.com,
agradecemos!)





2010/1/26 Raul Lima <[email protected]>

> Boa tarde Luiz,
> Você vai ter que criar um evento no PopUp e disparar ele para que ele seja
> capturado na Main. É mais ou menos isso que está abaixo.
>
> Ex: Na chamada do PopUp
>
> pop.addEventListener("PopUpFechou",funcao_a_ser_executada);
>
> E no teu PopUp
>
> var e:Event = new Event("PopUpFechou");
> dispatchEvent(e);
> PopUpManager.removePopUp(this);
>
>
>
> 2010/1/26 Luiz Barros <[email protected]>
>
> Eu abri uma nova janela na minha aplicação assim:
>> Main.mxml
>> private function janOdescontos():void
>> {
>>  var janela:popOdescontos = PopUpManager.createPopUp( this,
>> popOdescontos, true ) as popOdescontos;
>>  janela.init()
>>
>>
>> }
>>
>>
>> chamando assim:
>> <mx:Button label="Outros Descontos" width="144" click="janOdescontos
>> ()" x="36.5" y="231"/>
>>
>> Agora em janOdescontos.mxml
>>
>>
>> Eu fecho a janela assim
>> private function Fechar():void
>> {
>>                PopUpManager.removePopUp( this );
>>
>>
>>
>> }
>>
>>
>> Mas gostaria que ao fechar a janela ele disparasse a funçaõ
>> atualizar() que está em Main.mxml
>>
>> Como fazer ?
>>
>> --
>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>> Para enviar uma mensagem, envie um e-mail para [email protected]
>> Para sair da lista, envie um email em branco para
>> [email protected]
>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>
>
>  --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para [email protected]
> Para sair da lista, envie um email em branco para
> [email protected]
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>



-- 
Mario Junior
Enterprise Java / Flex Architectures
Adobe Certified Expert Flex 3 with AIR

Sofshore Informática
http://www.sofshore.com.br
+55 (48) 3337 2003
Rua Pastor Willian Richard Schisler Filho 452 sl 102, 88034-100 Itacorubi
Florianopolis SC Brasil

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a