André tem alguns considerações neste seu código:


//meto que atribui valores ao vo telefone...
dispatchEvent(new
AddTelefoneEvent(telefone,AddTelefoneEvent.ADD_TELEFONE_FUNCIONARIO,
true));

//O que está em azul substitua por "addTelefoneEvent" (com aspas), pois foi
assim que você colocou no name do evento quando o declarou.

coloquei o telefone no construtor do evento.


no meu componente FormCadastrarFuncionario, que é o componente que deve
receber o evento, fiz o seguinte:
[Event(name="addTelefoneEvent",
type="fr.globalit.realtx.events.AddTelefoneEvent")]

//Neste caso o que está em azul é desnecessário pois somente irá escutar o
evento. Isto deve estar na componente que irá disparar o evento.

e no metodo que inicializa a classe...
parent.addEventListener("addTelefoneEvent", addTelefone);
meu handler addTelefone esta apenas mostrando um alert com o numero do
telefone, para eu ver que o evento foi realmente disparado, mas nao esta
funcionando ainda, preciso fazer mais alguma coisa? segue abaixo o codigo do
meu AddTelefoneEvent
package fr.globalit.realtx.events
{
    import flash.events.Event;

    import fr.globalit.realtx.modelo.Telefone;
    public class AddTelefoneEvent extends Event
    {
        public static const ADD_TELEFONE_FUNCIONARIO:String =
"addTelefoneFuncionario";// Desnecessário
        public var telefone:Telefone = new Telefone(); // Não precisa
instanciar, tb não atrapalha.

        public function AddTelefoneEvent(telefone:Telefone, type:String,
bubbles:Boolean=false)
        {
            super(type, bubbles);
            this.telefone = telefone;
        }

    }
}

2009/10/12 Andre de Souza Martins <andre_defacerbl...@hotmail.com>

> Ola Clayton,
>
>                 Primeiramente muito obrigado pela resposta, tentei
> implementar mas nao esta funcionando desta forma, veja como estou fazendo...
>
> no componente AdicionarTelefone eu tenho o seguinte:
>
> //meto que atribui valores ao vo telefone...
> dispatchEvent(new AddTelefoneEvent(telefone,
> AddTelefoneEvent.ADD_TELEFONE_FUNCIONARIO, true));
>
> coloquei o telefone no construtor do evento.
>
> no meu componente FormCadastrarFuncionario, que é o componente que deve
> receber o evento, fiz o seguinte:
>
> [Event(name="addTelefoneEvent",
> type="fr.globalit.realtx.events.AddTelefoneEvent")]
>
> e no metodo que inicializa a classe...
>
> parent.addEventListener("addTelefoneEvent", addTelefone);
>
> meu handler addTelefone esta apenas mostrando um alert com o numero do
> telefone, para eu ver que o evento foi realmente disparado, mas nao esta
> funcionando ainda, preciso fazer mais alguma coisa? segue abaixo o codigo do
> meu AddTelefoneEvent
>
> package fr.globalit.realtx.events
> {
>     import flash.events.Event;
>
>     import fr.globalit.realtx.modelo.Telefone;
>
>     public class AddTelefoneEvent extends Event
>     {
>         public static const ADD_TELEFONE_FUNCIONARIO:String =
> "addTelefoneFuncionario";
>         public var telefone:Telefone = new Telefone();
>
>         public function AddTelefoneEvent(telefone:Telefone, type:String,
> bubbles:Boolean=false)
>         {
>             super(type, bubbles);
>             this.telefone = telefone;
>         }
>
>     }
> }
>
> Agradecido pela ajuda!
>
> André Martins
>
> ------------------------------
> Date: Mon, 12 Oct 2009 15:23:52 -0300
> Subject: [flexdev] Re: [Urgente] Disparar Eventos no Adobe Flex
> From: marquesclayt...@gmail.com
> To: flexdev@googlegroups.com
>
> Crie uma classe de evento para este caso extendendo de Event.
> Neste nova classe de evento que criou defina um objeto do tipo Object
> mesmo, deve ser public,por exemplo:
>
> public obj : Object;
>
> No método construtor deixe apenas como parametro o type e o bubbles,
> passando tb como parametro para o super estes dois.
>
> Pronto está criado sua classe de persolizada.
>
> Na classe,que é a janela que deve disparar o evento faça o seguinte:
>
> - logo após os imports, pode ser antes tb não faz diferença, apenas sugeri
> para organização, define o seu evento da seguinte forma:
> [Event(name="nome_do_Evento", type="o_packge.SuaClasseDeEvento")]
>
>
> quando tiver que disparar este evento:
>
> var evento : SeuEvento = new SeuEvento("nome_do_Evento",true)   // o true
> define que o evento irá propagar por borbulhamento;
> evento.obj = Ojeto_Que_Ira_Para_A_Outra_Janela;
> dispachEvent(evento);
>
>
> Na janela que vc disparou adicione o listenner no parent - Isto é possível
> por causa da propagação por borbulhamento, mesmo o evento sendo disparadopor
> outro componente;
>
> parent.addEventListenner("nome_do_Evento", handler);
>
> no método handler defina oque deve ser executado.
>
>
>
>  2009/10/12 Andre de Souza Martins <andre_defacerbl...@hotmail.com>
>
>  Ola Pessoal!
>
>
>                minha situacao é a seguinte, tenho duas janelas em meu
> sistema, uma onde o usuario entra alguns dados, e outra onde estes dados
> deverao ser mostrados, o que acontece, eu preciso que a janela a dispare um
> evento que a janela b possa capturar... porem isto esta sendo um problema
> para mim pois estou disparando o evento numa janela e a janela b nao
> consegue captura-lo, consegui fazer funcionar adicionando o evento no
> Application.application, mas ficou com cara de gambiarra demais pra mim,
> queria algo mais independente... se possivel claro, estou usando cairngorm,
> mas nao queria colocar estes dados no model locator, pois se trata apenas de
> um telefone... alguem poderia dar uma luz?
>
>
> Abraços Pessoal
>
> André Martins
>
> ------------------------------
> Novo Internet Explorer 8: traduza com apenas um clique. Baixe agora, é
> grátis!<http://brasil.microsoft.com.br/IE8/mergulhe/?utm_source=MSN;Hotmail&utm_medium=Tagline&utm_campaign=IE8>
>
> --
> Clayton Marques Pereira
>
>
>
> ------------------------------
> Novo Internet Explorer 8: traduza com apenas um clique. Baixe agora, é
> grátis!<http://brasil.microsoft.com.br/IE8/mergulhe/?utm_source=MSN%3BHotmail&utm_medium=Tagline&utm_campaign=IE8>
> >
>


-- 
Clayton Marques Pereira

--~--~---------~--~----~------------~-------~--~----~
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