italoborges 0 Denunciar post Postado Junho 24, 2009 Pessoal, tudo blza? Queria trocar uma idéia sobre o funcionamento de eventos personalizados. Estou programando várias coisas onde preciso muito usar estes eventos. Tenho algumas dúvidas em relação a isso. Tenho uma classe que estende a Event. package it.events { import flash.events.Event; public class ContentEvent extends Event { static public const CLICOU:String = "clicou"; public var nome:String; public function ContentEvent($nome:String, type:String, bubbles:Boolean = false, cancelable:Boolean = false) { nome = $nome; super(type, bubbles, cancelable); } } } Tenho uma classe principal Content.as Nela adiciono um listener para está minha classe ContentEvent. addEventListener(ContentEvent.CLICOU, function (){ }); Gostaria de saber o seguinte, se qualquer lugar que eu usar o dispatchEvent seja com bubbles = true, esse listener irá ouvir, ou tem algum restrição a isso? abrs. Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Junho 24, 2009 a restrição é que quem dispara o dispatchEvent, deve estar "dentro" de quem esta ouvindo no caso se você colocar os listener na classe principal, ela vai ouvir todos os dispatchEvent, um exemplo simples, cada um desses nomes são classes, nessa hierarquia Pessoa--> Braço ---> Mão ______--> Perna --> Pé a classe Pessoa ouvi todos os eventos de todas as 4 classes (se o bubbles = true) a classe Perna não consegue ouvir nenhum dispatchEvent que a classe Mão disparar, apenas os dispatchEvent da classe Pé a classe Braço não consegue ouvir nenhum dispatchEvent que a classe Pé disparar, apenas os dispatchEvent da classe Mão é simples assim []´s Compartilhar este post Link para o post Compartilhar em outros sites
italoborges 0 Denunciar post Postado Junho 24, 2009 Putss!! Essa explicação foi perfeitaa!!! Consegui entender perfeitamente. Era este meu problema mesmo. Para resolver eu pensei em 2 soluções, centralizar esse listener em uma classe comum entre os dois caminhos do bubbles. E o que eu usei até o momento foi stage.addEvent... para adicionar o listener. Valeu Eder! Compartilhar este post Link para o post Compartilhar em outros sites