Hi there.
I’m doing a test on AS3 event system.
import flash.events.KeyboardEvent;
function detectKeyDown(e:KeyboardEvent):void {
trace(e.keyCode);
}
stage.addEventListener(KeyboardEvent.KEY_DOWN, detectKeyDown);
The above code is on the main timeline. It works and traces every key press I made. But on line 5, if I remove “stage.” before addEventListener(…), I can’t trace a thing.
package {
import flash.display.Sprite;
import flash.events.KeyboardEvent;
public class ShroudClearer extends Sprite {
public function ShroudClearer(xPos:Number,yPos:Number) {
x = xPos;
y = yPos;
addEventListener(KeyboardEvent.KEY_DOWN, detectKeyDown);
}
public function detectKeyDown(e:KeyboardEvent):void {
trace(e.keyCode);
x++;
y++;
}
}
}
I created a class, created an instance of this class by:
var myShroudClearer:ShroudClearer = new ShroudClearer(0,0);
on timeline.
Nothing happens when I press any key.
So WHY, for the former and latter cases?
Thanks in advance.
Felastine.