Šta je bolje, u smislu manjeg opterećenja Flash Player-a:
Veći broj "Slušaca" sa "užim" opsegom target-a, ili manji broj sa "širim" opsegom target-a? Ili je to isto?
Primer:
Imam klasu koja prvi button: DugmeMoje
package
{
public class DugmeMoje extends Sprite
{
public function DugmeMoje(imeDugmeta:String):void
{
addEventListener(MouseEvent.MOUSE_OVER, iznadDugmeta)//
addEventListener(MouseEvent.MOUSE_OUT, vanDugmeta)//
addEventListener(MouseEvent.MOUSE_DOWN, pritisnuoDugme)//
napraviDugme()
}
private function pritisnuoDugme(event:MouseEvent)
{
this.alpha = .1
}
private function iznadDugmeta(event:MouseEvent)
{
this.alpha = .5
}
private function vanDugmeta(event:MouseEvent)
{
this.alpha = 1
}
private function napraviDugme()
{
... crta dugme ...
}
}
}
Doc clas: DugmeMoje_DC
package
{
public class DugmeMoje_DC extends MovieClip
{
var nacrtanoDugme:DugmeMoje;
var red:Array = ["prvo dugme", "drugo"...]
public function DugmeMoje_DC()
{
for(var ii:Number=0; ii<red.length; ii++){
nacrtanoDugme = new DugmeMoje(red[ii])
addChild(nacrtanoDugme)
}
//addEventListener(MouseEvent.MOUSE_OVER, iznadDugmeta)
//addEventListener(MouseEvent.MOUSE_OUT, vanDugmeta)
//addEventListener(MouseEvent.MOUSE_UP, pritisnuoDugme)
}
/*
private function pritisnuoDugme(event:MouseEvent)
{
trace(event.target.name)//.parent.name)
}
private function iznadDugmeta(event:MouseEvent)
{
event.target.alpha = .1//
}
private function vanDugmeta(event:MouseEvent)
{
event.target.alpha = 1
}
*/
}
}
(izbacio sam sve sto ne utice na odgovor)
Na ovaj način (barem ja tako mislim) svakoj istanci klase DugmeMoje registrujem "Slušaca".
10 buttona = 30 "Slušaca"
Ako to uradim u Doc clas. imaću ih samo 3 (dato u komentarima), koji će "raditi više posla"...
Ili mali Perica tako razmišlja...
|