La classe DisplayObject eredita dalla classe EventDispatcher. Ciò significa che ogni oggetto di visualizzazione può essere incluso completamente nel modello evento (descritto in
Gestione degli eventi
). Tutti gli oggetti di visualizzazione possono utilizzare il proprio metodo
addEventListener()
, ereditato dalla classe EventDispatcher, per ascoltare particolari eventi, ma solo se l'oggetto che ascolta fa parte del flusso di eventi di tale evento.
Quando Flash Player o AIR inviano un oggetto evento, tale oggetto esegue un percorso di andata e ritorno dallo stage all'oggetto di visualizzazione in cui si è verificato l'evento. Se, ad esempio, un utente fa clic su un oggetto di visualizzazione denominato
child1
, Flash Player invia un oggetto evento che parte dallo stage, attraversa la gerarchia dell'elenco di visualizzazione fino a raggiungere l'oggetto di visualizzazione
child1
.
Il flusso di eventi è concettualmente suddiviso in tre fasi, come illustrato nel diagramma seguente:
Per ulteriori informazioni, vedete
Gestione degli eventi
.
Un dato importante da tenere presente, quando si lavora con gli eventi degli oggetti di visualizzazione, è l'effetto sui listener di eventi in relazione alla rimozione automatica degli oggetti di visualizzazione dalla memoria (garbage collection) quando tali oggetti vengono rimossi dall'elenco di visualizzazione. Se un oggetto di visualizzazione include oggetti registrati come listener ai propri eventi, tale oggetto di visualizzazione non verrà rimosso dalla memoria, anche se viene rimosso dall'elenco di visualizzazione, in quanto include riferimenti a tali oggetti listener. Per ulteriori informazioni, vedete la sezione
Gestione dei listener di eventi
.