User Guide
MovieClip.onKeyDown 601
MovieClip.onKeyDown
Availability
Flash Player 6.
Usage
my_mc.onKeyDown = function() {
// your statements here
}
Parameters
None.
Returns
Nothing.
Description
Event handler; invoked when a movie clip has input focus and a key is pressed. The onKeyDown
event handler is invoked with no parameters. You can use the
Key.getAscii() and
Key.getCode() methods to determine which key was pressed. You must define a function that
executes when the event handler is invoked. You can define the function on the Timeline or in a
class file that extends the MovieClip class or is linked to a symbol in the library.
The
onKeyDown event handler works only if the movie clip has input focus enabled and set. First,
the
MovieClip.focusEnabled property must be set to true for the movie clip. Then, the clip
must be given focus. This can be done either by using
Selection.setFocus() or by setting the
Tab key to navigate to the clip.
If
Selection.setFocus() is used, the path for the movie clip must be passed to
Selection.setFocus(). It is very easy for other elements to take the focus back after the mouse
is moved.
Example
The following example defines a function for the onKeyDown() method that writes the results a
trace() method to the log file. Create a movie clip called my_mc and add the following
ActionScript to your FLA or AS file:
my_mc.onKeyDown = function() {
trace("key was pressed");
};
The movie clip must have focus for the onKeyDown event handler to work. Add the following
ActionScript to set input focus.
my_mc.tabEnabled = true;
my_mc.focusEnabled = true;
Selection.setFocus(my_mc);
When you tab to the movie clip and press a key, key was pressed writes to the log file.
However, this does not occur after you move the mouse, because the movie clip loses focus.
Therefore, you should use
Key.onKeyDown in most cases.