A classe DisplayObject é herdada da classe EventDispatcher. Desse modo, todos os objetos de exibição podem participar plenamente no modelo de evento (descrito em
Manipulação de eventos
). Todos os objetos de exibição podem usar seu método
addEventListener()
(herdado da classe EventDispatcher) para ouvir um evento específico, mas somente se o objeto ouvinte fizer parte do fluxo desse evento.
Quando o Flash Player ou o AIR envia um objeto de evento, esse objeto faz uma viagem de ida e volta do palco até o objeto de exibição onde ocorreu o evento. Por exemplo, se o usuário clicar em um objeto de exibição chamado
child1
, o Flash Player enviará um objeto de evento do palco, por meio da hierarquia da lista de exibição, até o objeto de exibição
child1
.
O fluxo do evento é conceitualmente dividido em três fases, como mostra este diagrama:
Para obter mais informações, consulte
Manipulação de eventos
.
Uma questão importante que deve ser considerada ao trabalhar com eventos de objeto de exibição é o efeito que os ouvintes de evento podem ter quando os objetos de exibição removidos automaticamente da memória (lixo coletado) forem removidos da lista de exibição. Se um objeto de exibição tiver objetos inscritos como ouvintes de eventos, esse objeto não será removido da memória mesmo quando for removido da lista de exibição, pois ainda terá referências a esses objetos de ouvinte. Para obter mais informações, consulte
Gerenciamento de ouvintes de evento
.