All Packages  Class Hierarchy  This Package  Previous  Next  Index  

Class java.awt.event.KeyEvent

java.lang.Object
    |
    +----java.util.EventObject
            |
            +----java.awt.AWTEvent
                    |
                    +----java.awt.event.ComponentEvent
                            |
                            +----java.awt.event.InputEvent
                                    |
                                    +----java.awt.event.KeyEvent

public class KeyEvent
extends InputEvent
An event which indicates that a keystroke occurred in a component.

This low-level event is generated by a component object (such as a text field) when a key is pressed, released, or typed (pressed and released). The event is passed to every KeyListener or KeyAdapter object which registered to receive such events using the component's addKeyListener method. (KeyAdapter objects implement the KeyListener interface.) Each such listener object gets this KeyEvent when the event occurs.

See Also:
KeyAdapter, KeyListener, Tutorial: Writing a Key Listener, Reference: The Java Class Libraries (update file)

Variable Index

 o CHAR_UNDEFINED
KEY_PRESSED and KEY_RELEASED events which do not map to a valid Unicode character use this for the keyChar value.
 o KEY_FIRST
The first number in the range of ids used for key events.
 o KEY_LAST
The last number in the range of ids used for key events.
 o KEY_PRESSED
The "key pressed" event.
 o KEY_RELEASED
The "key released" event.
 o KEY_TYPED
The "key typed" event.
 o VK_0
VK_0 thru VK_9 are the same as ASCII '0' thru '9' (0x30 - 0x39)
 o VK_1
 o VK_2
 o VK_3
 o VK_4
 o VK_5
 o VK_6
 o VK_7
 o VK_8
 o VK_9
 o VK_A
VK_A thru VK_Z are the same as ASCII 'A' thru 'Z' (0x41 - 0x5A)
 o VK_ACCEPT
 o VK_ADD
 o VK_ALT
 o VK_AMPERSAND
 o VK_ASTERISK
 o VK_B
 o VK_BACK_QUOTE
 o VK_BACK_SLASH
 o VK_BACK_SPACE
 o VK_BRACELEFT
 o VK_BRACERIGHT
 o VK_C
 o VK_CANCEL
 o VK_CAPS_LOCK
 o VK_CLEAR
 o VK_CLOSE_BRACKET
 o VK_COMMA
 o VK_CONTROL
 o VK_CONVERT
 o VK_D
 o VK_DEAD_ABOVEDOT
 o VK_DEAD_ABOVERING
 o VK_DEAD_ACUTE
 o VK_DEAD_BREVE
 o VK_DEAD_CARON
 o VK_DEAD_CEDILLA
 o VK_DEAD_CIRCUMFLEX
 o VK_DEAD_DIAERESIS
 o VK_DEAD_DOUBLEACUTE
 o VK_DEAD_GRAVE
 o VK_DEAD_IOTA
 o VK_DEAD_MACRON
 o VK_DEAD_OGONEK
 o VK_DEAD_SEMIVOICED_SOUND
 o VK_DEAD_TILDE
 o VK_DEAD_VOICED_SOUND
 o VK_DECIMAL
 o VK_DELETE
 o VK_DIVIDE
 o VK_DOWN
 o VK_E
 o VK_END
 o VK_ENTER
Virtual key codes.
 o VK_EQUALS
 o VK_ESCAPE
 o VK_F
 o VK_F1
 o VK_F10
 o VK_F11
 o VK_F12
 o VK_F2
 o VK_F3
 o VK_F4
 o VK_F5
 o VK_F6
 o VK_F7
 o VK_F8
 o VK_F9
 o VK_FINAL
 o VK_G
 o VK_GREATER
 o VK_H
 o VK_HELP
 o VK_HOME
 o VK_I
 o VK_INSERT
 o VK_J
 o VK_K
 o VK_KANA
 o VK_KANJI
 o VK_KP_DOWN
 o VK_KP_LEFT
 o VK_KP_RIGHT
 o VK_KP_UP
for KeyPad cursor arrow keys
 o VK_L
 o VK_LEFT
 o VK_LESS
 o VK_M
 o VK_META
 o VK_MODECHANGE
 o VK_MULTIPLY
 o VK_N
 o VK_NONCONVERT
 o VK_NUM_LOCK
 o VK_NUMPAD0
 o VK_NUMPAD1
 o VK_NUMPAD2
 o VK_NUMPAD3
 o VK_NUMPAD4
 o VK_NUMPAD5
 o VK_NUMPAD6
 o VK_NUMPAD7
 o VK_NUMPAD8
 o VK_NUMPAD9
 o VK_O
 o VK_OPEN_BRACKET
 o VK_P
 o VK_PAGE_DOWN
 o VK_PAGE_UP
 o VK_PAUSE
 o VK_PERIOD
 o VK_PRINTSCREEN
 o VK_Q
 o VK_QUOTE
 o VK_QUOTEDBL
 o VK_R
 o VK_RIGHT
 o VK_S
 o VK_SCROLL_LOCK
 o VK_SEMICOLON
 o VK_SEPARATER
 o VK_SHIFT
 o VK_SLASH
 o VK_SPACE
 o VK_SUBTRACT
 o VK_T
 o VK_TAB
 o VK_U
 o VK_UNDEFINED
KEY_TYPED events do not have a keyCode value.
 o VK_UP
 o VK_V
 o VK_W
 o VK_X
 o VK_Y
 o VK_Z

Constructor Index

 o KeyEvent(Component, int, long, int, int)
 o KeyEvent(Component, int, long, int, int, char)
Constructs a KeyEvent object.

Method Index

 o getKeyChar()
Returns the character associated with the key in this event.
 o getKeyCode()
Returns the integer key-code associated with the key in this event.
 o getKeyModifiersText(int)
Returns a String describing the modifier key(s), such as "Shift", or "Ctrl+Shift".
 o getKeyText(int)
Returns a String describing the keyCode, such as "HOME", "F1" or "A".
 o isActionKey()
Returns whether or not the key in this event is an "action" key, as defined in Event.java.
 o paramString()
Returns a parameter string identifying this event.
 o setKeyChar(char)
Set the keyChar value to indicate a logical character.
 o setKeyCode(int)
Set the keyCode value to indicate a physical key.
 o setModifiers(int)
Set the modifiers to indicate additional keys that were held down (shift, ctrl, alt, meta) defined as part of InputEvent.

Variables

 o KEY_FIRST
public static final int KEY_FIRST
The first number in the range of ids used for key events.

 o KEY_LAST
public static final int KEY_LAST
The last number in the range of ids used for key events.

 o KEY_TYPED
public static final int KEY_TYPED
The "key typed" event. This event is generated by a combination of a key press followed by a key release.

 o KEY_PRESSED
public static final int KEY_PRESSED
The "key pressed" event. This event is generated when a key is pushed down.

 o KEY_RELEASED
public static final int KEY_RELEASED
The "key released" event. This event is generated when a key is let up.

 o VK_ENTER
public static final int VK_ENTER
Virtual key codes. These codes report which keyboard key has been pressed, rather than a character generated by the combination of one or more keystrokes (like "A", which comes from shift and "a").

For example, pressing the Shift key will cause a KEY_PRESSED event with a VK_SHIFT keyCode, while pressing the 'a' key will result in a VK_A keyCode. After the 'a' key is released, a KEY_RELEASED event will be fired with VK_A, followed by a KEY_TYPED event with a keyChar value of 'A'.

Note: Key combinations which do not result in characters, such as action keys like F1, do not generate KEY_TYPED events.

Note: not all keyboards or systems are capable of generating all virtual key codes. No attempt is made in Java to artificially generate these keys.

WARNING: aside from those keys where are defined by the Java language (VK_ENTER, VK_BACK_SPACE, and VK_TAB), do not rely on the values of these constants. Sun reserves the right to change these values as needed to accomodate a wider range of keyboards in the future.

 o VK_BACK_SPACE
public static final int VK_BACK_SPACE
 o VK_TAB
public static final int VK_TAB
 o VK_CANCEL
public static final int VK_CANCEL
 o VK_CLEAR
public static final int VK_CLEAR
 o VK_SHIFT
public static final int VK_SHIFT
 o VK_CONTROL
public static final int VK_CONTROL
 o VK_ALT
public static final int VK_ALT
 o VK_PAUSE
public static final int VK_PAUSE
 o VK_CAPS_LOCK
public static final int VK_CAPS_LOCK
 o VK_ESCAPE
public static final int VK_ESCAPE
 o VK_SPACE
public static final int VK_SPACE
 o VK_PAGE_UP
public static final int VK_PAGE_UP
 o VK_PAGE_DOWN
public static final int VK_PAGE_DOWN
 o VK_END
public static final int VK_END
 o VK_HOME
public static final int VK_HOME
 o VK_LEFT
public static final int VK_LEFT
 o VK_UP
public static final int VK_UP
 o VK_RIGHT
public static final int VK_RIGHT
 o VK_DOWN
public static final int VK_DOWN
 o VK_COMMA
public static final int VK_COMMA
 o VK_PERIOD
public static final int VK_PERIOD
 o VK_SLASH
public static final int VK_SLASH
 o VK_0
public static final int VK_0
VK_0 thru VK_9 are the same as ASCII '0' thru '9' (0x30 - 0x39)

 o VK_1
public static final int VK_1
 o VK_2
public static final int VK_2
 o VK_3
public static final int VK_3
 o VK_4
public static final int VK_4
 o VK_5
public static final int VK_5
 o VK_6
public static final int VK_6
 o VK_7
public static final int VK_7
 o VK_8
public static final int VK_8
 o VK_9
public static final int VK_9
 o VK_SEMICOLON
public static final int VK_SEMICOLON
 o VK_EQUALS
public static final int VK_EQUALS
 o VK_A
public static final int VK_A
VK_A thru VK_Z are the same as ASCII 'A' thru 'Z' (0x41 - 0x5A)

 o VK_B
public static final int VK_B
 o VK_C
public static final int VK_C
 o VK_D
public static final int VK_D
 o VK_E
public static final int VK_E
 o VK_F
public static final int VK_F
 o VK_G
public static final int VK_G
 o VK_H
public static final int VK_H
 o VK_I
public static final int VK_I
 o VK_J
public static final int VK_J
 o VK_K
public static final int VK_K
 o VK_L
public static final int VK_L
 o VK_M
public static final int VK_M
 o VK_N
public static final int VK_N
 o VK_O
public static final int VK_O
 o VK_P
public static final int VK_P
 o VK_Q
public static final int VK_Q
 o VK_R
public static final int VK_R
 o VK_S
public static final int VK_S
 o VK_T
public static final int VK_T
 o VK_U
public static final int VK_U
 o VK_V
public static final int VK_V
 o VK_W
public static final int VK_W
 o VK_X
public static final int VK_X
 o VK_Y
public static final int VK_Y
 o VK_Z
public static final int VK_Z
 o VK_OPEN_BRACKET
public static final int VK_OPEN_BRACKET
 o VK_BACK_SLASH
public static final int VK_BACK_SLASH
 o VK_CLOSE_BRACKET
public static final int VK_CLOSE_BRACKET
 o VK_NUMPAD0
public static final int VK_NUMPAD0
 o VK_NUMPAD1
public static final int VK_NUMPAD1
 o VK_NUMPAD2
public static final int VK_NUMPAD2
 o VK_NUMPAD3
public static final int VK_NUMPAD3
 o VK_NUMPAD4
public static final int VK_NUMPAD4
 o VK_NUMPAD5
public static final int VK_NUMPAD5
 o VK_NUMPAD6
public static final int VK_NUMPAD6
 o VK_NUMPAD7
public static final int VK_NUMPAD7
 o VK_NUMPAD8
public static final int VK_NUMPAD8
 o VK_NUMPAD9
public static final int VK_NUMPAD9
 o VK_MULTIPLY
public static final int VK_MULTIPLY
 o VK_ADD
public static final int VK_ADD
 o VK_SEPARATER
public static final int VK_SEPARATER
 o VK_SUBTRACT
public static final int VK_SUBTRACT
 o VK_DECIMAL
public static final int VK_DECIMAL
 o VK_DIVIDE
public static final int VK_DIVIDE
 o VK_F1
public static final int VK_F1
 o VK_F2
public static final int VK_F2
 o VK_F3
public static final int VK_F3
 o VK_F4
public static final int VK_F4
 o VK_F5
public static final int VK_F5
 o VK_F6
public static final int VK_F6
 o VK_F7
public static final int VK_F7
 o VK_F8
public static final int VK_F8
 o VK_F9
public static final int VK_F9
 o VK_F10
public static final int VK_F10
 o VK_F11
public static final int VK_F11
 o VK_F12
public static final int VK_F12
 o VK_DELETE
public static final int VK_DELETE
 o VK_NUM_LOCK
public static final int VK_NUM_LOCK
 o VK_SCROLL_LOCK
public static final int VK_SCROLL_LOCK
 o VK_PRINTSCREEN
public static final int VK_PRINTSCREEN
 o VK_INSERT
public static final int VK_INSERT
 o VK_HELP
public static final int VK_HELP
 o VK_META
public static final int VK_META
 o VK_BACK_QUOTE
public static final int VK_BACK_QUOTE
 o VK_QUOTE
public static final int VK_QUOTE
 o VK_KP_UP
public static final int VK_KP_UP
for KeyPad cursor arrow keys

 o VK_KP_DOWN
public static final int VK_KP_DOWN
 o VK_KP_LEFT
public static final int VK_KP_LEFT
 o VK_KP_RIGHT
public static final int VK_KP_RIGHT
 o VK_DEAD_GRAVE
public static final int VK_DEAD_GRAVE
 o VK_DEAD_ACUTE
public static final int VK_DEAD_ACUTE
 o VK_DEAD_CIRCUMFLEX
public static final int VK_DEAD_CIRCUMFLEX
 o VK_DEAD_TILDE
public static final int VK_DEAD_TILDE
 o VK_DEAD_MACRON
public static final int VK_DEAD_MACRON
 o VK_DEAD_BREVE
public static final int VK_DEAD_BREVE
 o VK_DEAD_ABOVEDOT
public static final int VK_DEAD_ABOVEDOT
 o VK_DEAD_DIAERESIS
public static final int VK_DEAD_DIAERESIS
 o VK_DEAD_ABOVERING
public static final int VK_DEAD_ABOVERING
 o VK_DEAD_DOUBLEACUTE
public static final int VK_DEAD_DOUBLEACUTE
 o VK_DEAD_CARON
public static final int VK_DEAD_CARON
 o VK_DEAD_CEDILLA
public static final int VK_DEAD_CEDILLA
 o VK_DEAD_OGONEK
public static final int VK_DEAD_OGONEK
 o VK_DEAD_IOTA
public static final int VK_DEAD_IOTA
 o VK_DEAD_VOICED_SOUND
public static final int VK_DEAD_VOICED_SOUND
 o VK_DEAD_SEMIVOICED_SOUND
public static final int VK_DEAD_SEMIVOICED_SOUND
 o VK_AMPERSAND
public static final int VK_AMPERSAND
 o VK_ASTERISK
public static final int VK_ASTERISK
 o VK_QUOTEDBL
public static final int VK_QUOTEDBL
 o VK_LESS
public static final int VK_LESS
 o VK_GREATER
public static final int VK_GREATER
 o VK_BRACELEFT
public static final int VK_BRACELEFT
 o VK_BRACERIGHT
public static final int VK_BRACERIGHT
 o VK_FINAL
public static final int VK_FINAL
 o VK_CONVERT
public static final int VK_CONVERT
 o VK_NONCONVERT
public static final int VK_NONCONVERT
 o VK_ACCEPT
public static final int VK_ACCEPT
 o VK_MODECHANGE
public static final int VK_MODECHANGE
 o VK_KANA
public static final int VK_KANA
 o VK_KANJI
public static final int VK_KANJI
 o VK_UNDEFINED
public static final int VK_UNDEFINED
KEY_TYPED events do not have a keyCode value. This value is used, instead.

 o CHAR_UNDEFINED
public static final char CHAR_UNDEFINED
KEY_PRESSED and KEY_RELEASED events which do not map to a valid Unicode character use this for the keyChar value.

Constructors

 o KeyEvent
public KeyEvent(Component source,
                int id,
                long when,
                int modifiers,
                int keyCode,
                char keyChar)
Constructs a KeyEvent object.

Parameters:
source - the Component that originated the event
id - an integer identifying the type of event
when - a long integer that specifys the time the event occurred
modifiers - the modifier keys down during event (shift, ctrl, alt, meta)
keyCode - the integer code for an actual key, or VK_UNDEFINED (for a key-typed event)
keyChar - the Unicode character generated by this event, or CHAR_UNDEFINED (for key-pressed and key-released events which do not map to a valid Unicode character)
 o KeyEvent
public KeyEvent(Component source,
                int id,
                long when,
                int modifiers,
                int keyCode)

Methods

 o getKeyCode
public int getKeyCode()
Returns the integer key-code associated with the key in this event.

Returns:
the integer code for an actual key on the keyboard. (For KEY_TYPED events, keyCode is VK_UNDEFINED.)
 o setKeyCode
public void setKeyCode(int keyCode)
Set the keyCode value to indicate a physical key.

Parameters:
keyCode - an integer corresponding to an actual key on the keyboard.
 o setKeyChar
public void setKeyChar(char keyChar)
Set the keyChar value to indicate a logical character.

Parameters:
keyChar - a char corresponding to to the combination of keystrokes that make up this event.
 o setModifiers
public void setModifiers(int modifiers)
Set the modifiers to indicate additional keys that were held down (shift, ctrl, alt, meta) defined as part of InputEvent.

Parameters:
modifiers - an integer combination of the modifier constants.
See Also:
InputEvent
 o getKeyChar
public char getKeyChar()
Returns the character associated with the key in this event. For example, the key-typed event for shift + "a" returns the value for "A".

Returns:
the Unicode character defined for this key event. If no valid Unicode character exists for this key event, keyChar is CHAR_UNDEFINED.
 o getKeyText
public static String getKeyText(int keyCode)
Returns a String describing the keyCode, such as "HOME", "F1" or "A". These strings can be localized by changing the awt.properties file.

Returns:
string a text description for a physical key, identified by its keyCode
 o getKeyModifiersText
public static String getKeyModifiersText(int modifiers)
Returns a String describing the modifier key(s), such as "Shift", or "Ctrl+Shift". These strings can be localized by changing the awt.properties file.

Returns:
string a text description of the combination of modifier keys that were held down during the event
 o isActionKey
public boolean isActionKey()
Returns whether or not the key in this event is an "action" key, as defined in Event.java.

Returns:
boolean value, true if the key is an "action" key
See Also:
Event
 o paramString
public String paramString()
Returns a parameter string identifying this event. This method is useful for event-logging and for debugging.

Returns:
a string identifying the event and its attributes
Overrides:
paramString in class ComponentEvent

All Packages  Class Hierarchy  This Package  Previous  Next  Index  

Submit a bug or feature