Archief - FLASH: EventDispatcher Class??

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

iamdesign

Legacy Member
Hoy,

We zijn bezig aan een project en hebben nu via klasses allemaal objecten op de stage geplaatst.

Nu zouden deze objecten van elkaars bestaan moeten afweten, want als je bv op movieclip cont_mc.mc_laag_1.LaagItem1 klikt dan moet deze infaden en moet cont_mc.mc_laag_1.LaagItem2 en cont_mc.mc_laag_1.LaagItem3 hiervan op de hoogte zijn dat LaagItem1 is aangeklikt en deze uitfaden bv.

Nu heb ik al veel gelezen over die eventdispatcher class maar dat is altijd zo abstract als iets...niemand die hier een te goei tutorial over weet, of misschien een andere manier om movieclips van elkaars status te laten weten.

Onze structuur ziet er zo uit:
---------------------------
index.fla
----
containerLaag(klasse)
----lagen (klasse)
----laagItems (klasse)

alvast bedankt!

Breen

Legacy Member
Je maakt best een class GenericDispatcher waar de te zenden objecten dat mooi van kunnen erven. Die klasse bevat bij ons ongeveer volgende code (heb de code niet bij de hand, heb even snel uit vingers overgenomen:
Code:
class GenericDispatcher { 
        private var dispatchEvent:Function; 
        private var addEventListener:Function; 
        private var removeEventListener:Function; 
        function GenericDispatcher() { 
                mx.events.EventDispatcher.initialize(this); 
        } 
        function forwardToObservers(event:String,data:Object):Void { 
                var eventObj:Object = {target:this, type:event}; 
                eventObj.eventData= data; 
                dispatchEvent(eventObj); 
        } 
}

Een vrij simpele tutorial om te beginnen:
http://www.a3d.nl/index.php/?p=48
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan