Jan Cássio 0 Denunciar post Postado Julho 14, 2005 Olá galera, alguém aí pode me passar alguma referência de como criar eventos no Flash? vale para a versão MX2004 também. Fiz aqui um exemplo mais ele não rolou.var Pessoa:Object;var acao:Object;AsBroadcaster.initialize(Pessoa);acao.onSpeak = function(palavras:String):String{ var fala:String = palavras; trace(this + "falou!" + fala); return fala;};Pessoa.broadcastMessage("onSpeak");Pessoa.addListener(acao);Desde já eu agradeço, até mais! Compartilhar este post Link para o post Compartilhar em outros sites
Rodryguex 0 Denunciar post Postado Maio 11, 2006 Olá, esta sua dúvida costuma ser comum entre os iniciantes em as.Este exemplo é bem simples.import mx.utils.Delegate;import mx.events.EventDispatcher;import mx.controls.*;class Eventos extends MovieClip{ var addEventListener:Function; var removeEventListener:Function; var dispatchEvent:Function; var bt_Falar:Button; var bt_Andar:Button; var txt_Evento:TextInput; function Eventos(){ EventDispatcher.initialize(this); } function onLoad(){ this.addEventListener("onFalar", Delegate.create(this, onFalar)); this.addEventListener("onAndar", Delegate.create(this, onAndar)); this.bt_Falar.addEventListener("click", Delegate.create(this, geraEventoFalar)); this.bt_Andar.addEventListener("click", Delegate.create(this, geraEventoAndar)); } private function geraEventoFalar(){ dispatchEvent( {type : 'onFalar' , target : this } ); } private function geraEventoAndar(){ dispatchEvent( {type : 'onAndar' , target : this } ); } private function onAndar(){ this.txt_Evento.text = 'onAndar'; trace('onAndar'); } private function onFalar(){ this.txt_Evento.text = 'onFalar'; trace('onFalar'); } }Este exemplo foi criado levando em conta que você tenha um .fla com um movie clip com qualquer ou nenhum nome de instancia vinculado com esta classe e que tenha no palco os componentes:bt_Falar : Buttonbt_Andar : Buttontxt_Evento : TextInputOs eventos podem ser gerados a qualquer momento tanto na classe ouvinte ou em outras classes desde q a classe ouvinte adicione o evento na classe que dispara.Exp:var $geraEventos : GeraEventos;$geraEventos.addEventListener("onFalar", Delegate.create(this, onFalar));onde " GeraEventos " é uma classe que esta disparando o evento " onFalar " .Detalhes;this.addEventListener("onFalar", Delegate.create(this, onFalar));" this. " É O ESCOPO DA ONDE ESTOU ADICIONANDO O EVENTO." onFalar " É O EVENTO QUE ESTOU OUVINDO." Delegate.create(this, " É O ESCOPO DA ONDE ESTA A FUNÇÃO QUE SERÁ EXECUTADA QUANDO OCORRER O EVENTO." onFalar)); " É A FUNÇÃO QUE SERÁ EXECUTADA QUANDO OCORRER O EVENTODetalhes;dispatchEvent( {type : 'onAndar' , target : this } );" {type : 'onAndar' , " É O EVENTO QUE ESTOU GERANDO." target : this } ); " É O ESCOPO DE ONDE ESTA ACONTECENDO O EVENTO.Mais explicações ou este exemplo em .fla:rodryguex@gmail.com Compartilhar este post Link para o post Compartilhar em outros sites