flash.events

# KeyboardEvent - AS3

Package | flash.events
Class | public class KeyboardEvent
Inheritance | KeyboardEvent Event Object

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

A KeyboardEvent object id dispatched in response to user input through a keyboard. There are two types of keyboard events: `KeyboardEvent.KEY_DOWN` and `KeyboardEvent.KEY_UP`

Because mappings between keys and specific characters vary by device and operating system, use the TextEvent event type for processing character input.

To listen globally for key events, listen on the Stage for the capture and target or bubble phase.

View the examples

More examples

Handling keyboard events
Understanding the keyCode and charCode properties

Learn more

About keyboard events
Understanding KeyboardEvent precedence

Related API Elements

KEY_DOWN
KEY_UP
KeyLocation

Public Properties
Hide Inherited Public Properties
Show Inherited Public Properties

| Property | Defined By
--- | --- | ---
|  | altKey : Boolean Indicates whether the Alt key is active (true) or inactive (false) on Windows; indicates whether the Option key is active on Mac OS. | KeyboardEvent
|  | bubbles : Boolean [read-only] Indicates whether an event is a bubbling event. | Event
|  | cancelable : Boolean [read-only] Indicates whether the behavior associated with the event can be prevented. | Event
|  | charCode : uint Contains the character code value of the key pressed or released. | KeyboardEvent
|  | commandKey : Boolean Indicates whether the Command key is active (true) or inactive (false). | KeyboardEvent
|  | constructor : Object A reference to the class object or constructor function for a given object instance. | Object
|  | controlKey : Boolean Indicates whether the Control key is active (true) or inactive (false). | KeyboardEvent
|  | ctrlKey : Boolean On Windows and Linux, indicates whether the Ctrl key is active (true) or inactive (false); On Mac OS, indicates whether either the Ctrl key or the Command key is active. | KeyboardEvent
|  | currentTarget : Object [read-only] The object that is actively processing the Event object with an event listener. | Event
|  | eventPhase : uint [read-only] The current phase in the event flow. | Event
|  | keyCode : uint The key code value of the key pressed or released. | KeyboardEvent
|  | keyLocation : uint Indicates the location of the key on the keyboard. | KeyboardEvent
|  | shiftKey : Boolean Indicates whether the Shift key modifier is active (true) or inactive (false). | KeyboardEvent
|  | target : Object [read-only] The event target. | Event
|  | type : String [read-only] The type of event. | Event

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | KeyboardEvent(type:String, bubbles:Boolean = true, cancelable:Boolean = false, charCodeValue:uint = 0, keyCodeValue:uint = 0, keyLocationValue:uint = 0, ctrlKeyValue:Boolean = false, altKeyValue:Boolean = false, shiftKeyValue:Boolean = false, controlKeyValue:Boolean = false, commandKeyValue:Boolean = false)
Creates an Event object that contains specific information about keyboard events.
KeyboardEvent
|  | clone():Event [override] Creates a copy of the KeyboardEvent object and sets the value of each property to match that of the original. | KeyboardEvent
|  | formatToString(className:String, ... arguments):String A utility function for implementing the toString() method in custom ActionScript 3.0 Event classes. | Event
|  | hasOwnProperty(name:String):Boolean Indicates whether an object has a specified property defined. | Object
|  | isDefaultPrevented():Boolean Checks whether the preventDefault() method has been called on the event. | Event
|  | isPrototypeOf(theClass:Object):Boolean Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter. | Object
|  | preventDefault():void Cancels an event's default behavior if that behavior can be canceled. | Event
|  | propertyIsEnumerable(name:String):Boolean Indicates whether the specified property exists and is enumerable. | Object
|  | setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void Sets the availability of a dynamic property for loop operations. | Object
|  | stopImmediatePropagation():void Prevents processing of any event listeners in the current node and any subsequent nodes in the event flow. | Event
|  | stopPropagation():void Prevents processing of any event listeners in nodes subsequent to the current node in the event flow. | Event
|  | toLocaleString():String Returns the string representation of this object, formatted according to locale-specific conventions. | Object
|  | toString():String [override] Returns a string that contains all the properties of the KeyboardEvent object. | KeyboardEvent
|  | updateAfterEvent():void Indicates that the display should be rendered after processing of this event completes, if the display list has been modified | KeyboardEvent
|  | valueOf():Object Returns the primitive value of the specified object. | Object

Public Constants
Hide Inherited Public Constants
Show Inherited Public Constants

| Constant | Defined By
--- | --- | ---
|  | KEY_DOWN : String = "keyDown" [static] The KeyboardEvent.KEY_DOWN constant defines the value of the type property of a keyDown event object. | KeyboardEvent
|  | KEY_UP : String = "keyUp" [static] The KeyboardEvent.KEY_UP constant defines the value of the type property of a keyUp event object. | KeyboardEvent

Property Detail

### altKey

property

`altKey:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9

Indicates whether the Alt key is active (`true`) or inactive (`false`) on Windows; indicates whether the Option key is active on Mac OS.

Implementation
`public function get altKey():Boolean`
`public function set altKey(value:Boolean):void`

### charCode

property

`charCode:uint`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

Contains the character code value of the key pressed or released. The character code values are English keyboard values. For example, if you press Shift+3, `charCode` is # on a Japanese keyboard, if you press Shift+2, `charCode` is

Implementation
`public function get charCode():uint`
`public function set charCode(value:uint):void`

Related API Elements

flash.system.IME

### commandKey

property

`commandKey:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Lite 4

Indicates whether the Command key is active (`true`) or inactive (`false`). Supported for Mac OS only. On Mac OS, the `commandKey` property has the same value as the `ctrlKey` property.

Implementation
`public function get commandKey():Boolean`
`public function set commandKey(value:Boolean):void`

### controlKey

property

`controlKey:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Lite 4

Indicates whether the Control key is active (`true`) or inactive (`false`). On Windows and Linux, this is also true when the Ctrl key is active.

Implementation
`public function get controlKey():Boolean`
`public function set controlKey(value:Boolean):void`

### ctrlKey

property

`ctrlKey:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9

On Windows and Linux, indicates whether the Ctrl key is active (`true`) or inactive (`false`); On Mac OS, indicates whether either the Ctrl key or the Command key is active.

Implementation
`public function get ctrlKey():Boolean`
`public function set ctrlKey(value:Boolean):void`

### keyCode

property

`keyCode:uint`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

The key code value of the key pressed or released.

Note: When an input method editor (IME) is running, `keyCode` does not report accurate key codes.

Implementation
`public function get keyCode():uint`
`public function set keyCode(value:uint):void`

Related API Elements

flash.system.IME

### keyLocation

property

`keyLocation:uint`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

Indicates the location of the key on the keyboard. This is useful for differentiating keys that appear more than once on a keyboard. For example, you can differentiate between the left and right Shift keys by the value of this property: `KeyLocation.LEFT` for the left and `KeyLocation.RIGHT` for the right. Another example is differentiating between number keys pressed on the standard keyboard (`KeyLocation.STANDARD`) versus the numeric keypad (`KeyLocation.NUM_PAD`).

Implementation
`public function get keyLocation():uint`
`public function set keyLocation(value:uint):void`

### shiftKey

property

`shiftKey:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9

Indicates whether the Shift key modifier is active (`true`) or inactive (`false`).

Implementation
`public function get shiftKey():Boolean`
`public function set shiftKey(value:Boolean):void`
Constructor Detail

### KeyboardEvent

()
Constructor

`public function KeyboardEvent(type:String, bubbles:Boolean = true, cancelable:Boolean = false, charCodeValue:uint = 0, keyCodeValue:uint = 0, keyLocationValue:uint = 0, ctrlKeyValue:Boolean = false, altKeyValue:Boolean = false, shiftKeyValue:Boolean = false, controlKeyValue:Boolean = false, commandKeyValue:Boolean = false)`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

Creates an Event object that contains specific information about keyboard events. Event objects are passed as parameters to event listeners.

Parameters

| `type:String` — The type of the event. Possible values are: `KeyboardEvent.KEY_DOWN` and `KeyboardEvent.KEY_UP`
| `bubbles:Boolean` (default = `true`)`` — Determines whether the Event object participates in the bubbling stage of the event flow.
| `cancelable:Boolean` (default = `false`)`` — Determines whether the Event object can be canceled.
| `charCodeValue:uint` (default = `0`)`` — The character code value of the key pressed or released. The character code values returned are English keyboard values. For example, if you press Shift+3, the `Keyboard.charCode()` property returns # on a Japanese or a German keyboard, just as it does on an English keyboard.
| `keyCodeValue:uint` (default = `0`)`` — The key code value of the key pressed or released.
| `keyLocationValue:uint` (default = `0`)`` — The location of the key on the keyboard.
| `ctrlKeyValue:Boolean` (default = `false`)`` — On Windows, indicates whether the Ctrl key is activated. On Mac, indicates whether either the Ctrl key or the Command key is activated.
| `altKeyValue:Boolean` (default = `false`)`` — Indicates whether the Alt key modifier is activated (Windows only).
| `shiftKeyValue:Boolean` (default = `false`)`` — Indicates whether the Shift key modifier is activated.
| `controlKeyValue:Boolean` (default = `false`)`` — Indicates whether the Control key is activated on Mac, and whether the Control or Ctrl keys are activated on WIndows and Linux.
| `commandKeyValue:Boolean` (default = `false`)`` — Indicates whether the Command key is activated (Mac only).

Related API Elements

KEY_DOWN
KEY_UP
Keyboard.charCode
Method Detail

### clone

()
method

`override public function clone():Event`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

Creates a copy of the KeyboardEvent object and sets the value of each property to match that of the original.

Returns

| `Event` — A new KeyboardEvent object with property values that match those of the original.

### toString

()
method

`override public function toString():String`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

Returns a string that contains all the properties of the KeyboardEvent object. The string is in the following format:

`[KeyboardEvent type=value bubbles=value cancelable=value ... shiftKey=value]`

Returns

| `String` — A string that contains all the properties of the KeyboardEvent object.

### updateAfterEvent

()
method

`public function updateAfterEvent():void`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9

Indicates that the display should be rendered after processing of this event completes, if the display list has been modified

Constant Detail

### KEY_DOWN

Constant

`public static const KEY_DOWN:String = "keyDown"`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

The `KeyboardEvent.KEY_DOWN` constant defines the value of the `type` property of a `keyDown` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`cancelable` | `true` in AIR, `false` in Flash Player; in AIR, canceling this event prevents the character from being entered into a text field.
`charCode` | The character code value of the key pressed or released.
`commandKey` | `true` on Mac if the Command key is active. Otherwise, `false`
`controlKey` | `true` on Windows and Linux if the Ctrl key is active. `true` on Mac if either the Control key is active. Otherwise, `false`
`ctrlKey` | `true` on Windows and Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`keyCode` | The key code value of the key pressed or released.
`keyLocation` | The location of the key on the keyboard.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`target` | The InteractiveObject instance with focus. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

Related API Elements

flash.display.InteractiveObject.keyDown

### KEY_UP

Constant

`public static const KEY_UP:String = "keyUp"`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

The `KeyboardEvent.KEY_UP` constant defines the value of the `type` property of a `keyUp` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`charCode` | Contains the character code value of the key pressed or released.
`commandKey` | `true` on Mac if the Command key is active. Otherwise, `false`
`controlKey` | `true` on Windows and Linux if the Ctrl key is active. `true` on Mac if either the Control key is active. Otherwise, `false`
`ctrlKey` | `true` on Windows if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`keyCode` | The key code value of the key pressed or released.
`keyLocation` | The location of the key on the keyboard.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`target` | The InteractiveObject instance with focus. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

Related API Elements

flash.display.InteractiveObject.keyUp
Examples How to use this example
KeyboardEventExample.as
The following example uses the `KeyboardEventExample` class to show keyboard events and their listener functions. The example carries out the following tasks:

1. It creates a new Sprite instance named `child`.
2. It declares properties for later use in setting a square's background color and size.
3. Using methods of Sprite, it draws a light-blue square that it displays on the Stage at default coordinates (0,0) by calling the `addChild()` method.
4. It adds one mouse event and two keyboard type event listeners:
   - `click`/`clickHandler` which is dispatched when you click on the square to set focus on the `child` sprite so it can listen for keyboard events.
   - `keyDown`/`keyDownHandler` which is dispatched whenever any key is pressed. The subscriber method prints information about the event using the `trace()` statement.
   - `keyUp`/`keyUpHandler` which is dispatched when a key is released.

When you test this example, you need to click the square first for the keyboard events to work.

Also, if you are using the Test Movie command in Flash, the authoring interface may respond to certain keys instead of the event listeners attached to the child sprite.

Copy

    package {
        import flash.display.Sprite;
        import flash.display.DisplayObject;
        import flash.events.*;

        public class KeyboardEventExample extends Sprite {
            private var child:Sprite = new Sprite();
            private var bgColor:uint = 0x00CCFF;
            private var size:uint = 80;

            public function KeyboardEventExample() {
                child.graphics.beginFill(bgColor);
                child.graphics.drawRect(0, 0, size, size);
                child.graphics.endFill();
                addChild(child);
                child.addEventListener(MouseEvent.CLICK, clickHandler);
                child.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
                child.addEventListener(KeyboardEvent.KEY_UP, keyUpHandler);

            }

            private function clickHandler(event:MouseEvent):void {
                stage.focus = child;
            }

            private function keyDownHandler(event:KeyboardEvent):void {
                trace("keyDownHandler: " + event.keyCode);
                trace("ctrlKey: " + event.ctrlKey);
                trace("keyLocation: " + event.keyLocation);
                trace("shiftKey: " + event.shiftKey);
                trace("altKey: " + event.altKey);

            }

            private function keyUpHandler(event:KeyboardEvent):void {
                trace("keyUpHandler: " + event.keyCode);
            }

        }
    }

© 2015 Adobe Systems Incorporated. All rights reserved.
Mon Apr 10 2017, 12:28 PM -07:00