| Autor | Zpráva | ||
|---|---|---|---|
| Jaro Profil * |
#1 · Zasláno: 19. 1. 2010, 23:59:18
preco to nefunguje
function efekt(bol:Boolean):void { function onFrame(evt:Event):void { trace("ok"); } if (bol==true){ addEventListener(Event.ENTER_FRAME, onFrame); }else{ removeEventListener("enterFrame", onFrame); } } efekt(true); but.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); function mouseDownHandler(event:MouseEvent):void { efekt(false); trace("koniec") } stop(); |
||
| COBIS Profil * |
#2 · Zasláno: 20. 1. 2010, 15:30:00
To je zajimave, ze kdyz doplnim do funkce onFrame trace(bol); tak to porad vypisuje true i kdyz je davno bol false.
function efekt(bol:Boolean):void {
function onFrame(evt:Event):void {
trace(bol);
trace("ok");
}
if (bol==true) {
addEventListener(Event.ENTER_FRAME, onFrame);
} else {
removeEventListener(Event.ENTER_FRAME, onFrame);
}
}
efekt(true);
but.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
function mouseDownHandler(event:MouseEvent):void {
efekt(false);
trace("koniec");
}ale ja bych to resil nejak takhle: function onFrame(evt:Event):void {
trace("ok");
}
function efekt(bol:Boolean):void {
if (bol==true) {
addEventListener(Event.ENTER_FRAME, onFrame);
} else {
removeEventListener(Event.ENTER_FRAME, onFrame);
}
}
efekt(true);
but.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
function mouseDownHandler(event:MouseEvent):void {
efekt(false);
trace("koniec");
} |
||
| DoubleThink Profil * |
#3 · Zasláno: 20. 1. 2010, 15:52:45
Dávat funkci do funkce mi přijde dost divoké. Připojením k listeneru ji sice nechá garbage collector na pokoji ale druhým zavoláním pravděpodobně nadeklaruješ novou (která nebude shodná s tou původní), takže ji asi removeEventListener nenajde. Nejsem si jistý.
|
||
| Jaro Profil * |
#4 · Zasláno: 20. 1. 2010, 16:15:19
DoubleThink:
ak das removeEventListener chned za add tak to funguje, tak ako to napisal Cobis som vedel ze to funguje ale potreboval som aby premenne z efekt (tu je to zjednodusene)boli dostupne aj pre onFrame. nakoniec som to vsetko dal do rootu tak ako to napisal Cobis. |
||
| Jaro Profil * |
#5 · Zasláno: 20. 1. 2010, 16:17:34
|
||
|
Časová prodleva: 16 let
|
|||
0