Keyboard Events and Text Events

ActionScript 3.0 uses a single technique for handling events, so if you know how to register an event listener for a mouse event, it's not difficult to handle events for keyboards or other objects. All events use the same event register and event listener duo. For example, the keyboard event has two constants: KEY_DOWN and KEY_UP. You can use the Flash stage itself to register keyboard events.

Note

You can download the Flash document for this example, 13-5_Keyboard_Events.fla, from the Missing CD page at www.missingmanuals.com/cds.

Here's a simple example that shows you how to start and stop a movie clip from running using the KEY_DOWN and KEY_UP events. The movie clip simply shows a number for each frame as it's running. This example references an instance of the Stage class. The stage represents the drawing area in a Flash animation. As a result, the stage has properties, like width and height, and like other objects, it has an addEventListener method.

Create a new document. Add a layer, and then name one layer actions and the other layer counter. At the first frame of the counter layer, add a movie clip symbol to the stage. Open the movie clip, and put a big number 1 on the stage. Add four more keyframes with the numbers 2 through 5 on the stage. In the Properties panel, name the movie clip mcCounter. Click the first frame in the actions layer, open the Actions window, and then type this short script:

stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownListener); ...

Get Flash CS5: The Missing Manual now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.