Contents | Package | Class | Tree | Deprecated | Index | Help Java 1.2 Beta 3
PREV | NEXT SHOW LISTS | HIDE LISTS

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)

Field Summary
static char  CHAR_UNDEFINED
KEY_PRESSED and KEY_RELEASED events which do not map to a valid Unicode character use this for the keyChar value.
static int  KEY_FIRST
The first number in the range of ids used for key events.
static int  KEY_LAST
The last number in the range of ids used for key events.
static int  KEY_PRESSED
The "key pressed" event.
static int  KEY_RELEASED
The "key released" event.
static int  KEY_TYPED
The "key typed" event.
static int  VK_0
VK_0 thru VK_9 are the same as ASCII '0' thru '9' (0x30 - 0x39)
static int  VK_1
 
static int  VK_2
 
static int  VK_3
 
static int  VK_4
 
static int  VK_5
 
static int  VK_6
 
static int  VK_7
 
static int  VK_8
 
static int  VK_9
 
static int  VK_A
VK_A thru VK_Z are the same as ASCII 'A' thru 'Z' (0x41 - 0x5A)
static int  VK_ACCEPT
 
static int  VK_ADD
 
static int  VK_AGAIN
 
static int  VK_ALT
 
static int  VK_AMPERSAND
 
static int  VK_ASTERISK
 
static int  VK_B
 
static int  VK_BACK_QUOTE
 
static int  VK_BACK_SLASH
 
static int  VK_BACK_SPACE
 
static int  VK_BRACELEFT
 
static int  VK_BRACERIGHT
 
static int  VK_C
 
static int  VK_CANCEL
 
static int  VK_CAPS_LOCK
 
static int  VK_CLEAR
 
static int  VK_CLOSE_BRACKET
 
static int  VK_COMMA
 
static int  VK_CONTROL
 
static int  VK_CONVERT
 
static int  VK_COPY
 
static int  VK_CUT
 
static int  VK_D
 
static int  VK_DEAD_ABOVEDOT
 
static int  VK_DEAD_ABOVERING
 
static int  VK_DEAD_ACUTE
 
static int  VK_DEAD_BREVE
 
static int  VK_DEAD_CARON
 
static int  VK_DEAD_CEDILLA
 
static int  VK_DEAD_CIRCUMFLEX
 
static int  VK_DEAD_DIAERESIS
 
static int  VK_DEAD_DOUBLEACUTE
 
static int  VK_DEAD_GRAVE
 
static int  VK_DEAD_IOTA
 
static int  VK_DEAD_MACRON
 
static int  VK_DEAD_OGONEK
 
static int  VK_DEAD_SEMIVOICED_SOUND
 
static int  VK_DEAD_TILDE
 
static int  VK_DEAD_VOICED_SOUND
 
static int  VK_DECIMAL
 
static int  VK_DELETE
 
static int  VK_DIVIDE
 
static int  VK_DOWN
 
static int  VK_E
 
static int  VK_END
 
static int  VK_ENTER
Virtual key codes.
static int  VK_EQUALS
 
static int  VK_ESCAPE
 
static int  VK_F
 
static int  VK_F1
 
static int  VK_F10
 
static int  VK_F11
 
static int  VK_F12
 
static int  VK_F2
 
static int  VK_F3
 
static int  VK_F4
 
static int  VK_F5
 
static int  VK_F6
 
static int  VK_F7
 
static int  VK_F8
 
static int  VK_F9
 
static int  VK_FINAL
 
static int  VK_FIND
 
static int  VK_G
 
static int  VK_GREATER
 
static int  VK_H
 
static int  VK_HELP
 
static int  VK_HOME
 
static int  VK_I
 
static int  VK_INSERT
 
static int  VK_J
 
static int  VK_K
 
static int  VK_KANA
 
static int  VK_KANJI
 
static int  VK_KP_DOWN
 
static int  VK_KP_LEFT
 
static int  VK_KP_RIGHT
 
static int  VK_KP_UP
for KeyPad cursor arrow keys
static int  VK_L
 
static int  VK_LEFT
 
static int  VK_LESS
 
static int  VK_M
 
static int  VK_META
 
static int  VK_MODECHANGE
 
static int  VK_MULTIPLY
 
static int  VK_N
 
static int  VK_NONCONVERT
 
static int  VK_NUM_LOCK
 
static int  VK_NUMPAD0
 
static int  VK_NUMPAD1
 
static int  VK_NUMPAD2
 
static int  VK_NUMPAD3
 
static int  VK_NUMPAD4
 
static int  VK_NUMPAD5
 
static int  VK_NUMPAD6
 
static int  VK_NUMPAD7
 
static int  VK_NUMPAD8
 
static int  VK_NUMPAD9
 
static int  VK_O
 
static int  VK_OPEN_BRACKET
 
static int  VK_P
 
static int  VK_PAGE_DOWN
 
static int  VK_PAGE_UP
 
static int  VK_PASTE
 
static int  VK_PAUSE
 
static int  VK_PERIOD
 
static int  VK_PRINTSCREEN
 
static int  VK_PROPS
 
static int  VK_Q
 
static int  VK_QUOTE
 
static int  VK_QUOTEDBL
 
static int  VK_R
 
static int  VK_RIGHT
 
static int  VK_S
 
static int  VK_SCROLL_LOCK
 
static int  VK_SEMICOLON
 
static int  VK_SEPARATER
 
static int  VK_SHIFT
 
static int  VK_SLASH
 
static int  VK_SPACE
 
static int  VK_STOP
 
static int  VK_SUBTRACT
 
static int  VK_T
 
static int  VK_TAB
 
static int  VK_U
 
static int  VK_UNDEFINED
KEY_TYPED events do not have a keyCode value.
static int  VK_UNDO
 
static int  VK_UP
 
static int  VK_V
 
static int  VK_W
 
static int  VK_X
 
static int  VK_Y
 
static int  VK_Z
 
 
Fields inherited from class java.awt.event.InputEvent
 ALT_MASK, BUTTON1_MASK, BUTTON2_MASK, BUTTON3_MASK, CTRL_MASK, META_MASK, SHIFT_MASK
 
Fields inherited from class java.awt.event.ComponentEvent
 COMPONENT_FIRST, COMPONENT_HIDDEN, COMPONENT_LAST, COMPONENT_MOVED, COMPONENT_RESIZED, COMPONENT_SHOWN
 
Fields inherited from class java.awt.AWTEvent
 ACTION_EVENT_MASK, ADJUSTMENT_EVENT_MASK, COMPONENT_EVENT_MASK, consumed, CONTAINER_EVENT_MASK, FOCUS_EVENT_MASK, id, INPUT_METHOD_EVENT_MASK, ITEM_EVENT_MASK, KEY_EVENT_MASK, MOUSE_EVENT_MASK, MOUSE_MOTION_EVENT_MASK, RESERVED_ID_MAX, TEXT_EVENT_MASK, WINDOW_EVENT_MASK
 
Fields inherited from class java.util.EventObject
 source
 

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

Method Summary
char  getKeyChar()
Returns the character associated with the key in this event.
int  getKeyCode()
Returns the integer key-code associated with the key in this event.
static String  getKeyModifiersText(int modifiers)
Returns a String describing the modifier key(s), such as "Shift", or "Ctrl+Shift".
static String  getKeyText(int keyCode)
Returns a String describing the keyCode, such as "HOME", "F1" or "A".
boolean  isActionKey()
Returns whether or not the key in this event is an "action" key, as defined in Event.java.
String  paramString()
Returns a parameter string identifying this event.
void  setKeyChar(char keyChar)
Set the keyChar value to indicate a logical character.
void  setKeyCode(int keyCode)
Set the keyCode value to indicate a physical key.
void  setModifiers(int modifiers)
Set the modifiers to indicate additional keys that were held down (shift, ctrl, alt, meta) defined as part of InputEvent.
 
Methods inherited from class java.awt.event.InputEvent
 consume, getModifiers, getWhen, isAltDown, isConsumed, isControlDown, isMetaDown, isShiftDown
 
Methods inherited from class java.awt.event.ComponentEvent
 getComponent, paramString
 
Methods inherited from class java.awt.AWTEvent
 consume, getID, isConsumed, paramString, toString
 
Methods inherited from class java.util.EventObject
 getSource, toString
 
Methods inherited from class java.lang.Object
 clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

KEY_FIRST

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

KEY_LAST

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

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.

KEY_PRESSED

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

KEY_RELEASED

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

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.


VK_BACK_SPACE

public static final int VK_BACK_SPACE

VK_TAB

public static final int VK_TAB

VK_CANCEL

public static final int VK_CANCEL

VK_CLEAR

public static final int VK_CLEAR

VK_SHIFT

public static final int VK_SHIFT

VK_CONTROL

public static final int VK_CONTROL

VK_ALT

public static final int VK_ALT

VK_PAUSE

public static final int VK_PAUSE

VK_CAPS_LOCK

public static final int VK_CAPS_LOCK

VK_ESCAPE

public static final int VK_ESCAPE

VK_SPACE

public static final int VK_SPACE

VK_PAGE_UP

public static final int VK_PAGE_UP

VK_PAGE_DOWN

public static final int VK_PAGE_DOWN

VK_END

public static final int VK_END

VK_HOME

public static final int VK_HOME

VK_LEFT

public static final int VK_LEFT

VK_UP

public static final int VK_UP

VK_RIGHT

public static final int VK_RIGHT

VK_DOWN

public static final int VK_DOWN

VK_COMMA

public static final int VK_COMMA

VK_PERIOD

public static final int VK_PERIOD

VK_SLASH

public static final int VK_SLASH

VK_0

public static final int VK_0
VK_0 thru VK_9 are the same as ASCII '0' thru '9' (0x30 - 0x39)

VK_1

public static final int VK_1

VK_2

public static final int VK_2

VK_3

public static final int VK_3

VK_4

public static final int VK_4

VK_5

public static final int VK_5

VK_6

public static final int VK_6

VK_7

public static final int VK_7

VK_8

public static final int VK_8

VK_9

public static final int VK_9

VK_SEMICOLON

public static final int VK_SEMICOLON

VK_EQUALS

public static final int VK_EQUALS

VK_A

public static final int VK_A
VK_A thru VK_Z are the same as ASCII 'A' thru 'Z' (0x41 - 0x5A)

VK_B

public static final int VK_B

VK_C

public static final int VK_C

VK_D

public static final int VK_D

VK_E

public static final int VK_E

VK_F

public static final int VK_F

VK_G

public static final int VK_G

VK_H

public static final int VK_H

VK_I

public static final int VK_I

VK_J

public static final int VK_J

VK_K

public static final int VK_K

VK_L

public static final int VK_L

VK_M

public static final int VK_M

VK_N

public static final int VK_N

VK_O

public static final int VK_O

VK_P

public static final int VK_P

VK_Q

public static final int VK_Q

VK_R

public static final int VK_R

VK_S

public static final int VK_S

VK_T

public static final int VK_T

VK_U

public static final int VK_U

VK_V

public static final int VK_V

VK_W

public static final int VK_W

VK_X

public static final int VK_X

VK_Y

public static final int VK_Y

VK_Z

public static final int VK_Z

VK_OPEN_BRACKET

public static final int VK_OPEN_BRACKET

VK_BACK_SLASH

public static final int VK_BACK_SLASH

VK_CLOSE_BRACKET

public static final int VK_CLOSE_BRACKET

VK_NUMPAD0

public static final int VK_NUMPAD0

VK_NUMPAD1

public static final int VK_NUMPAD1

VK_NUMPAD2

public static final int VK_NUMPAD2

VK_NUMPAD3

public static final int VK_NUMPAD3

VK_NUMPAD4

public static final int VK_NUMPAD4

VK_NUMPAD5

public static final int VK_NUMPAD5

VK_NUMPAD6

public static final int VK_NUMPAD6

VK_NUMPAD7

public static final int VK_NUMPAD7

VK_NUMPAD8

public static final int VK_NUMPAD8

VK_NUMPAD9

public static final int VK_NUMPAD9

VK_MULTIPLY

public static final int VK_MULTIPLY

VK_ADD

public static final int VK_ADD

VK_SEPARATER

public static final int VK_SEPARATER

VK_SUBTRACT

public static final int VK_SUBTRACT

VK_DECIMAL

public static final int VK_DECIMAL

VK_DIVIDE

public static final int VK_DIVIDE

VK_F1

public static final int VK_F1

VK_F2

public static final int VK_F2

VK_F3

public static final int VK_F3

VK_F4

public static final int VK_F4

VK_F5

public static final int VK_F5

VK_F6

public static final int VK_F6

VK_F7

public static final int VK_F7

VK_F8

public static final int VK_F8

VK_F9

public static final int VK_F9

VK_F10

public static final int VK_F10

VK_F11

public static final int VK_F11

VK_F12

public static final int VK_F12

VK_DELETE

public static final int VK_DELETE

VK_NUM_LOCK

public static final int VK_NUM_LOCK

VK_SCROLL_LOCK

public static final int VK_SCROLL_LOCK

VK_PRINTSCREEN

public static final int VK_PRINTSCREEN

VK_INSERT

public static final int VK_INSERT

VK_HELP

public static final int VK_HELP

VK_META

public static final int VK_META

VK_BACK_QUOTE

public static final int VK_BACK_QUOTE

VK_QUOTE

public static final int VK_QUOTE

VK_KP_UP

public static final int VK_KP_UP
for KeyPad cursor arrow keys

VK_KP_DOWN

public static final int VK_KP_DOWN

VK_KP_LEFT

public static final int VK_KP_LEFT

VK_KP_RIGHT

public static final int VK_KP_RIGHT

VK_DEAD_GRAVE

public static final int VK_DEAD_GRAVE

VK_DEAD_ACUTE

public static final int VK_DEAD_ACUTE

VK_DEAD_CIRCUMFLEX

public static final int VK_DEAD_CIRCUMFLEX

VK_DEAD_TILDE

public static final int VK_DEAD_TILDE

VK_DEAD_MACRON

public static final int VK_DEAD_MACRON

VK_DEAD_BREVE

public static final int VK_DEAD_BREVE

VK_DEAD_ABOVEDOT

public static final int VK_DEAD_ABOVEDOT

VK_DEAD_DIAERESIS

public static final int VK_DEAD_DIAERESIS

VK_DEAD_ABOVERING

public static final int VK_DEAD_ABOVERING

VK_DEAD_DOUBLEACUTE

public static final int VK_DEAD_DOUBLEACUTE

VK_DEAD_CARON

public static final int VK_DEAD_CARON

VK_DEAD_CEDILLA

public static final int VK_DEAD_CEDILLA

VK_DEAD_OGONEK

public static final int VK_DEAD_OGONEK

VK_DEAD_IOTA

public static final int VK_DEAD_IOTA

VK_DEAD_VOICED_SOUND

public static final int VK_DEAD_VOICED_SOUND

VK_DEAD_SEMIVOICED_SOUND

public static final int VK_DEAD_SEMIVOICED_SOUND

VK_AMPERSAND

public static final int VK_AMPERSAND

VK_ASTERISK

public static final int VK_ASTERISK

VK_QUOTEDBL

public static final int VK_QUOTEDBL

VK_LESS

public static final int VK_LESS

VK_GREATER

public static final int VK_GREATER

VK_BRACELEFT

public static final int VK_BRACELEFT

VK_BRACERIGHT

public static final int VK_BRACERIGHT

VK_FINAL

public static final int VK_FINAL

VK_CONVERT

public static final int VK_CONVERT

VK_NONCONVERT

public static final int VK_NONCONVERT

VK_ACCEPT

public static final int VK_ACCEPT

VK_MODECHANGE

public static final int VK_MODECHANGE

VK_KANA

public static final int VK_KANA

VK_KANJI

public static final int VK_KANJI

VK_CUT

public static final int VK_CUT

VK_COPY

public static final int VK_COPY

VK_PASTE

public static final int VK_PASTE

VK_UNDO

public static final int VK_UNDO

VK_AGAIN

public static final int VK_AGAIN

VK_FIND

public static final int VK_FIND

VK_PROPS

public static final int VK_PROPS

VK_STOP

public static final int VK_STOP

VK_UNDEFINED

public static final int VK_UNDEFINED
KEY_TYPED events do not have a keyCode value. This value is used, instead.

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.
Constructor Detail

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)

KeyEvent

public KeyEvent(Component source,
                int id,
                long when,
                int modifiers,
                int keyCode)
Method Detail

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

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.

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.

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

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.

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

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

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

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

Contents | Package | Class | Tree | Deprecated | Index | Help Java 1.2 Beta 3
PREV | NEXT SHOW LISTS | HIDE LISTS

Submit a bug or feature
Submit comments/suggestions about new javadoc look.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A. All Rights Reserved.