Adobe® Flex® 4 Language Reference
Hide Packages and Classes List |  Packages  |  Classes  |  Index  |  Appendixes
flash.events 
KeyboardEvent 
Packageflash.events
Classpublic class KeyboardEvent
InheritanceKeyboardEvent Inheritance Event Inheritance Object

Language Version: ActionScript 3.0
Runtime Versions: AIR 1.0 Flash Player 9

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

See also



Public Properties
 PropertyDefined 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
 Inheritedbubbles : Boolean
[read-only] Indicates whether an event is a bubbling event.
Event
 Inheritedcancelable : 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
  AIR-only commandKey : Boolean
Indicates whether the Command key is active (true) or inactive (false).
KeyboardEvent
 Inheritedconstructor : Object
A reference to the class object or constructor function for a given object instance.
Object
  AIR-only 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
 InheritedcurrentTarget : Object
[read-only] The object that is actively processing the Event object with an event listener.
Event
 InheritedeventPhase : 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
 Inheritedprototype : Object
[static] A reference to the prototype object of a class or function object.
Object
  shiftKey : Boolean
Indicates whether the Shift key modifier is active (true) or inactive (false).
KeyboardEvent
 Inheritedtarget : Object
[read-only] The event target.
Event
 Inheritedtype : String
[read-only] The type of event.
Event
Public Methods
 MethodDefined 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
  
[override] Creates a copy of the KeyboardEvent object and sets the value of each property to match that of the original.
KeyboardEvent
 Inherited
formatToString(className:String, ... arguments):String
A utility function for implementing the toString() method in custom ActionScript 3.0 Event classes.
Event
 Inherited
Indicates whether an object has a specified property defined.
Object
 Inherited
Checks whether the preventDefault() method has been called on the event.
Event
 Inherited
Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter.
Object
 Inherited
Cancels an event's default behavior if that behavior can be canceled.
Event
 Inherited
Indicates whether the specified property exists and is enumerable.
Object
 Inherited
Sets the availability of a dynamic property for loop operations.
Object
 Inherited
Prevents processing of any event listeners in the current node and any subsequent nodes in the event flow.
Event
 Inherited
Prevents processing of any event listeners in nodes subsequent to the current node in the event flow.
Event
 Inherited
Returns the string representation of this object, formatted according to locale-specific conventions.
Object
  
[override] Returns a string that contains all the properties of the KeyboardEvent object.
KeyboardEvent
  
Indicates that the display should be rendered after processing of this event completes, if the display list has been modified
KeyboardEvent
 Inherited
Returns the primitive value of the specified object.
Object
Public Constants
 ConstantDefined By
 InheritedACTIVATE : String = "activate"
[static] The ACTIVATE constant defines the value of the type property of an activate event object.
Event
 InheritedADDED : String = "added"
[static] The Event.ADDED constant defines the value of the type property of an added event object.
Event
 InheritedADDED_TO_STAGE : String = "addedToStage"
[static] The Event.ADDED_TO_STAGE constant defines the value of the type property of an addedToStage event object.
Event
 InheritedCANCEL : String = "cancel"
[static] The Event.CANCEL constant defines the value of the type property of a cancel event object.
Event
 InheritedCHANGE : String = "change"
[static] The Event.CHANGE constant defines the value of the type property of a change event object.
Event
 InheritedCLEAR : String = "clear"
[static] The Event.CLEAR constant efines the value of the type property of a clear event object.
Event
 InheritedCLOSE : String = "close"
[static] The Event.CLOSE constant defines the value of the type property of a close event object.
Event
 InheritedAIR-only CLOSING : String = "closing"
[static] The Event.CLOSING constant defines the value of the type property of a closing event object.
Event
 InheritedCOMPLETE : String = "complete"
[static] The Event.COMPLETE constant defines the value of the type property of a complete event object.
Event
 InheritedCONNECT : String = "connect"
[static] The Event.CONNECT constant defines the value of the type property of a connect event object.
Event
 InheritedCOPY : String = "copy"
[static] Defines the value of the type property of a copy event object.
Event
 InheritedCUT : String = "cut"
[static] Defines the value of the type property of a cut event object.
Event
 InheritedDEACTIVATE : String = "deactivate"
[static] The Event.DEACTIVATE constant defines the value of the type property of a deactivate event object.
Event
 InheritedDISPLAYING : String = "displaying"
[static] The Event.DISPLAYING constant defines the value of the type property of a displaying event object.
Event
 InheritedENTER_FRAME : String = "enterFrame"
[static] The Event.ENTER_FRAME constant defines the value of the type property of an enterFrame event object.
Event
 InheritedEXIT_FRAME : String = "exitFrame"
[static] The Event.EXIT_FRAME constant defines the value of the type property of an exitFrame event object.
Event
 InheritedAIR-only EXITING : String = "exiting"
[static] The Event.EXITING constant defines the value of the type property of an exiting event object.
Event
 InheritedFRAME_CONSTRUCTED : String = "frameConstructed"
[static] The Event.FRAME_CONSTRUCTED constant defines the value of the type property of an frameConstructed event object.
Event
 InheritedFULLSCREEN : String = "fullScreen"
[static] The Event.FULL_SCREEN constant defines the value of the type property of a fullScreen event object.
Event
 InheritedAIR-only HTML_BOUNDS_CHANGE : String = "htmlBoundsChange"
[static] The Event.HTML_BOUNDS_CHANGE constant defines the value of the type property of an htmlBoundsChange event object.
Event
 InheritedAIR-only HTML_DOM_INITIALIZE : String = "htmlDOMInitialize"
[static] The Event.HTML_DOM_INITIALIZE constant defines the value of the type property of an htmlDOMInitialize event object.
Event
 InheritedAIR-only HTML_RENDER : String = "htmlRender"
[static] The Event.HTML_RENDER constant defines the value of the type property of an htmlRender event object.
Event
 InheritedID3 : String = "id3"
[static] The Event.ID3 constant defines the value of the type property of an id3 event object.
Event
 InheritedINIT : String = "init"
[static] The Event.INIT constant defines the value of the type property of an init event object.
Event
  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 keyDown event object.
KeyboardEvent
 InheritedAIR-only LOCATION_CHANGE : String = "locationChange"
[static] The Event.LOCATION_CHANGE constant defines the value of the type property of a locationChange event object.
Event
 InheritedMOUSE_LEAVE : String = "mouseLeave"
[static] The Event.MOUSE_LEAVE constant defines the value of the type property of a mouseLeave event object.
Event
 InheritedAIR-only NETWORK_CHANGE : String = "networkChange"
[static] The Event.NETWORK_CHANGE constant defines the value of the type property of a networkChange event object.
Event
 InheritedOPEN : String = "open"
[static] The Event.OPEN constant defines the value of the type property of an open event object.
Event
 InheritedPASTE : String = "paste"
[static] The Event.PASTE constant defines the value of the type property of a paste event object.
Event
 InheritedREMOVED : String = "removed"
[static] The Event.REMOVED constant defines the value of the type property of a removed event object.
Event
 InheritedREMOVED_FROM_STAGE : String = "removedFromStage"
[static] The Event.REMOVED_FROM_STAGE constant defines the value of the type property of a removedFromStage event object.
Event
 InheritedRENDER : String = "render"
[static] The Event.RENDER constant defines the value of the type property of a render event object.
Event
 InheritedRESIZE : String = "resize"
[static] The Event.RESIZE constant defines the value of the type property of a resize event object.
Event
 InheritedSCROLL : String = "scroll"
[static] The Event.SCROLL constant defines the value of the type property of a scroll event object.
Event
 InheritedSELECT : String = "select"
[static] The Event.SELECT constant defines the value of the type property of a select event object.
Event
 InheritedSELECT_ALL : String = "selectAll"
[static] The Event.SELECT_ALL constant defines the value of the type property of a selectAll event object.
Event
 InheritedSOUND_COMPLETE : String = "soundComplete"
[static] The Event.SOUND_COMPLETE constant defines the value of the type property of a soundComplete event object.
Event
 InheritedTAB_CHILDREN_CHANGE : String = "tabChildrenChange"
[static] The Event.TAB_CHILDREN_CHANGE constant defines the value of the type property of a tabChildrenChange event object.
Event
 InheritedTAB_ENABLED_CHANGE : String = "tabEnabledChange"
[static] The Event.TAB_ENABLED_CHANGE constant defines the value of the type property of a tabEnabledChange event object.
Event
 InheritedTAB_INDEX_CHANGE : String = "tabIndexChange"
[static] The Event.TAB_INDEX_CHANGE constant defines the value of the type property of a tabIndexChange event object.
Event
 InheritedUNLOAD : String = "unload"
[static] The Event.UNLOAD constant defines the value of the type property of an unload event object.
Event
 InheritedAIR-only USER_IDLE : String = "userIdle"
[static] The Event.USER_IDLE constant defines the value of the type property of a userIdle event object.
Event
 InheritedAIR-only USER_PRESENT : String = "userPresent"
[static] The Event.USER_PRESENT constant defines the value of the type property of a userPresent event object.
Event
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

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, just as it is on an English keyboard.

Note: When an input method editor (IME) is running, charCode does not report accurate character codes.



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

See also

AIR-only 

commandKey

property 
commandKey:Boolean

Language Version: ActionScript 3.0
Runtime Versions: AIR 1.0

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
AIR-only 

controlKey

property 
controlKey:Boolean

Language Version: ActionScript 3.0
Runtime Versions: AIR 1.0

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

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

See also

keyLocation

property 
keyLocation:uint

Language Version: ActionScript 3.0
Runtime Versions: AIR 1.0 Flash Player 9

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

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 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).

See also

Method Detail

clone

()method
override public function clone():Event

Language Version: ActionScript 3.0
Runtime Versions: AIR 1.0 Flash Player 9

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

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

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

This event has the following properties:

PropertyValue
bubblestrue
cancelabletrue in AIR, false in Flash Player; in AIR, canceling this event prevents the character from being entered into a text field.
charCodeThe character code value of the key pressed or released.
commandKeytrue on Mac if the Command key is active. Otherwise, false
controlKeytrue on Windows and Linux if the Ctrl key is active. true on Mac if either the Control key is active. Otherwise, false
ctrlKeytrue 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.
currentTargetThe object that is actively processing the Event object with an event listener.
keyCodeThe key code value of the key pressed or released.
keyLocationThe location of the key on the keyboard.
shiftKeytrue if the Shift key is active; false if it is inactive.
targetThe 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.

See also

KEY_UP

Constant 
public static const KEY_UP:String = "keyUp"

Language Version: ActionScript 3.0
Runtime Versions: AIR 1.0 Flash Player 9

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

This event has the following properties:

PropertyValue
bubblestrue
cancelablefalse; there is no default behavior to cancel.
charCodeContains the character code value of the key pressed or released.
commandKeytrue on Mac if the Command key is active. Otherwise, false
controlKeytrue on Windows and Linux if the Ctrl key is active. true on Mac if either the Control key is active. Otherwise, false
ctrlKeytrue on Windows if the Ctrl key is active. true on Mac if either the Ctrl key or the Command key is active. Otherwise, false.
currentTargetThe object that is actively processing the Event object with an event listener.
keyCodeThe key code value of the key pressed or released.
keyLocationThe location of the key on the keyboard.
shiftKeytrue if the Shift key is active; false if it is inactive.
targetThe 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.

See also

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.

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);
        }
        
        
    }
}