模块  java.desktop
软件包  java.awt.event

Class KeyEvent

  • 实现的所有接口
    Serializable
    已知直接子类:
    MenuKeyEvent

    public class KeyEvent
    extends InputEvent
    指示组件中发生击键的事件。

    当按下,释放或键入键时,该组件对象(例如文本字段)会生成此低级事件。 该事件将传递给每个KeyListenerKeyAdapter对象,该对象使用组件的addKeyListener方法进行注册以接收此类事件。 KeyAdapter对象实现了KeyListener接口。)每个此类侦听器对象在事件发生时获取此KeyEvent

    “键入类型”事件是更高级别的,通常不依赖于平台或键盘布局。 它们是在输入Unicode字符时生成的,是查找字符输入的首选方法。 在最简单的情况下,通过单键按压(例如,'a')产生键类型事件。 然而,通常,字符是由一系列按键(例如,'shift'+'a')产生的,并且从按键事件到键控事件的映射可以是多对一或多对多。 生成密钥类型事件通常不需要密钥版本,但在某些情况下,在释放密钥之前不会生成密钥类型事件(例如,通过Windows中的Alt-Numpad方法输入ASCII序列)。 没有为不生成Unicode字符的键(例如,操作键,修改键等)生成键类型事件。

    getKeyChar方法始终返回有效的Unicode字符或CHAR_UNDEFINED。 KEY_TYPED事件报告字符输入:KEY_PRESSED和KEY_RELEASED事件不一定与字符输入相关联。 因此,getKeyChar方法的结果保证仅对KEY_TYPED事件有意义。

    对于按键和键释放事件,getKeyCode方法返回事件的keyCode。 对于键类型事件,getKeyCode方法始终返回VK_UNDEFINED getExtendedKeyCode方法还可以与许多国际键盘布局一起使用。

    “按下按键”和“按键发布”事件是较低级别的,取决于平台和键盘布局。 每当按下或释放键时都会生成它们,并且这是查找不生成字符输入的键的唯一方法(例如,操作键,修改键等)。 按下或释放的键由getKeyCodegetExtendedKeyCode方法指示,这些方法返回虚拟键代码。

    虚拟键代码用于报告按下了哪个键盘键,而不是由一个或多个击键组合产生的字符(例如“A”,它来自shift和“a”)。

    例如,按Shift键将导致带有VK_SHIFT keyCode的KEY_PRESSED事件,而按下'a'键将导致VK_A keyCode。 释放'a'键后,将使用VK_A触发KEY_RELEASED事件。 另外,生成keyChar值为“A”的KEY_TYPED事件。

    按下并释放键盘上的键会导致生成以下键事件(按顺序):

      KEY_PRESSED
        KEY_TYPED (is only generated if a valid Unicode character could be generated.)
        KEY_RELEASED 
    但在某些情况下(例如自动重复或输入方法被激活),顺序可能不同(并且取决于平台)。

    笔记:

    • 不产生Unicode字符的组合键(如F1和HELP键等操作键)不会生成KEY_TYPED事件。
    • 并非所有键盘或系统都能够生成所有虚拟键码。 Java中没有尝试人工生成这些密钥。
    • 虚拟键代码不识别物理键:它们取决于平台和键盘布局。 例如,使用美式键盘布局时生成VK_Q的键将在使用法语键盘布局时生成VK_A。
    • 使用美式键盘布局时生成VK_Q的键还会生成俄语或希伯来语布局的唯一代码。 在各种布局中,这些和许多其他代码没有VK_常量。 这些代码可以通过使用getExtendedKeyCode获得,并且在使用VK_常量时使用。
    • 并非所有字符都具有与之关联的键码。 例如,问号没有键码,因为没有键盘出现在主层上。
    • 为了支持与平台无关的操作键处理,Java平台使用一些额外的虚拟键常量来实现必须通过解释虚拟键代码和修饰符来识别的功能。 例如,对于日语Windows键盘,使用ALT修饰符返回VK_ALL_CANDIDATES而不是VK_CONVERT。
    • Focus Specification中所指定,默认情况下将密钥事件分派给焦点所有者。

    警告:除了Java语言定义的那些键(VK_ENTER,VK_BACK_SPACE和VK_TAB)之外,不要依赖VK_常量的值。 平台管家保留根据需要更改这些值的权利,以适应未来更广泛的键盘。

    如果任何特定KeyEvent实例的id参数不在KEY_FIRSTKEY_LAST范围内, KEY_FIRST导致未指定的行为。

    从以下版本开始:
    1.1
    另请参见:
    KeyAdapterKeyListenerTutorial: Writing a Key ListenerSerialized Form
    • 字段详细信息

      • KEY_FIRST

        public static final int KEY_FIRST
        用于关键事件的id范围中的第一个数字。
        另请参见:
        常数字段值
      • KEY_LAST

        public static final int KEY_LAST
        用于关键事件的id范围中的最后一个数字。
        另请参见:
        常数字段值
      • KEY_TYPED

        public static final int KEY_TYPED
        “键入类型”事件。 输入字符时会生成此事件。 在最简单的情况下,它是通过一键按压产生的。 然而,通常,字符是由一系列按键产生的,并且从按键事件到键控事件的映射可以是多对一或多对多。
        另请参见:
        常数字段值
      • KEY_PRESSED

        public static final int KEY_PRESSED
        “关键按下”事件。 按下键时会生成此事件。
        另请参见:
        常数字段值
      • KEY_RELEASED

        public static final int KEY_RELEASED
        “重点发布”事件。 当一个键松开时会生成此事件。
        另请参见:
        常数字段值
      • VK_ENTER

        public static final int VK_ENTER
        ENTER虚拟键的常量。
        另请参见:
        常数字段值
      • VK_BACK_SPACE

        public static final int VK_BACK_SPACE
        BACK_SPACE虚拟键的常量。
        另请参见:
        常数字段值
      • VK_TAB

        public static final int VK_TAB
        TAB虚拟密钥的常量。
        另请参见:
        常数字段值
      • VK_CANCEL

        public static final int VK_CANCEL
        CANCEL虚拟键的常量。
        另请参见:
        常数字段值
      • VK_CLEAR

        public static final int VK_CLEAR
        CLEAR虚拟键的常量。
        另请参见:
        常数字段值
      • VK_SHIFT

        public static final int VK_SHIFT
        SHIFT虚拟键的常量。
        另请参见:
        常数字段值
      • VK_CONTROL

        public static final int VK_CONTROL
        CONTROL虚拟键的常量。
        另请参见:
        常数字段值
      • VK_ALT

        public static final int VK_ALT
        ALT虚拟键的常量。
        另请参见:
        常数字段值
      • VK_PAUSE

        public static final int VK_PAUSE
        PAUSE虚拟键的常量。
        另请参见:
        常数字段值
      • VK_CAPS_LOCK

        public static final int VK_CAPS_LOCK
        CAPS_LOCK虚拟键的常量。
        另请参见:
        常数字段值
      • VK_ESCAPE

        public static final int VK_ESCAPE
        ESCAPE虚拟键的常量。
        另请参见:
        常数字段值
      • VK_SPACE

        public static final int VK_SPACE
        SPACE虚拟键的常量。
        另请参见:
        常数字段值
      • VK_PAGE_UP

        public static final int VK_PAGE_UP
        PAGE_UP虚拟键的常量。
        另请参见:
        常数字段值
      • VK_PAGE_DOWN

        public static final int VK_PAGE_DOWN
        PAGE_DOWN虚拟键的常量。
        另请参见:
        常数字段值
      • VK_END

        public static final int VK_END
        END虚拟键的常量。
        另请参见:
        常数字段值
      • VK_HOME

        public static final int VK_HOME
        HOME虚拟键的常量。
        另请参见:
        常数字段值
      • VK_LEFT

        public static final int VK_LEFT
        非小键盘 箭头键的常量。
        另请参见:
        VK_KP_LEFT常数字段值
      • VK_UP

        public static final int VK_UP
        非小键盘 向上箭头键的常量。
        另请参见:
        VK_KP_UP常数字段值
      • VK_RIGHT

        public static final int VK_RIGHT
        非小键盘 箭头键的常量。
        另请参见:
        VK_KP_RIGHT常数字段值
      • VK_DOWN

        public static final int VK_DOWN
        非小键盘 向下箭头键的常量。
        另请参见:
        VK_KP_DOWN常数字段值
      • VK_COMMA

        public static final int VK_COMMA
        逗号键的常量,“,”
        另请参见:
        常数字段值
      • VK_MINUS

        public static final int VK_MINUS
        减号的常量,“ - ”
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_PERIOD

        public static final int VK_PERIOD
        句点键的常量,“。”
        另请参见:
        常数字段值
      • VK_SLASH

        public static final int VK_SLASH
        正斜杠键的常量,“/”
        另请参见:
        常数字段值
      • VK_0

        public static final int VK_0
        “0”键的常量。
        另请参见:
        常数字段值
      • VK_1

        public static final int VK_1
        “1”键的常量。
        另请参见:
        常数字段值
      • VK_2

        public static final int VK_2
        “2”键的常量。
        另请参见:
        常数字段值
      • VK_3

        public static final int VK_3
        “3”键的常量。
        另请参见:
        常数字段值
      • VK_4

        public static final int VK_4
        “4”键的常量。
        另请参见:
        常数字段值
      • VK_5

        public static final int VK_5
        “5”键的常量。
        另请参见:
        常数字段值
      • VK_6

        public static final int VK_6
        “6”键的常量。
        另请参见:
        常数字段值
      • VK_7

        public static final int VK_7
        “7”键的常量。
        另请参见:
        常数字段值
      • VK_8

        public static final int VK_8
        “8”键的常量。
        另请参见:
        常数字段值
      • VK_9

        public static final int VK_9
        “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
        “A”键的常量。
        另请参见:
        常数字段值
      • VK_B

        public static final int VK_B
        “B”键的常量。
        另请参见:
        常数字段值
      • VK_C

        public static final int VK_C
        “C”键的常量。
        另请参见:
        常数字段值
      • VK_D

        public static final int VK_D
        “D”键的常量。
        另请参见:
        常数字段值
      • VK_E

        public static final int VK_E
        “E”键的常量。
        另请参见:
        常数字段值
      • VK_F

        public static final int VK_F
        “F”键的常量。
        另请参见:
        常数字段值
      • VK_G

        public static final int VK_G
        “G”键的常量。
        另请参见:
        常数字段值
      • VK_H

        public static final int VK_H
        “H”键的常量。
        另请参见:
        常数字段值
      • VK_I

        public static final int VK_I
        “I”键的常量。
        另请参见:
        常数字段值
      • VK_J

        public static final int VK_J
        “J”键的常量。
        另请参见:
        常数字段值
      • VK_K

        public static final int VK_K
        “K”键的常量。
        另请参见:
        常数字段值
      • VK_L

        public static final int VK_L
        “L”键的常量。
        另请参见:
        常数字段值
      • VK_M

        public static final int VK_M
        “M”键的常量。
        另请参见:
        常数字段值
      • VK_N

        public static final int VK_N
        “N”键的常量。
        另请参见:
        常数字段值
      • VK_O

        public static final int VK_O
        “O”键的常量。
        另请参见:
        常数字段值
      • VK_P

        public static final int VK_P
        “P”键的常量。
        另请参见:
        常数字段值
      • VK_Q

        public static final int VK_Q
        “Q”键的常量。
        另请参见:
        常数字段值
      • VK_R

        public static final int VK_R
        “R”键的常量。
        另请参见:
        常数字段值
      • VK_S

        public static final int VK_S
        “S”键的常量。
        另请参见:
        常数字段值
      • VK_T

        public static final int VK_T
        “T”键的常量。
        另请参见:
        常数字段值
      • VK_U

        public static final int VK_U
        “U”键的常量。
        另请参见:
        常数字段值
      • VK_V

        public static final int VK_V
        “V”键的常量。
        另请参见:
        常数字段值
      • VK_W

        public static final int VK_W
        “W”键的常量。
        另请参见:
        常数字段值
      • VK_X

        public static final int VK_X
        “X”键的常量。
        另请参见:
        常数字段值
      • VK_Y

        public static final int VK_Y
        “Y”键的常量。
        另请参见:
        常数字段值
      • VK_Z

        public static final int VK_Z
        “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
        数字键盘“0”键的常量。
        另请参见:
        常数字段值
      • VK_NUMPAD1

        public static final int VK_NUMPAD1
        数字键“1”键的常量。
        另请参见:
        常数字段值
      • VK_NUMPAD2

        public static final int VK_NUMPAD2
        数字键“2”键的常量。
        另请参见:
        常数字段值
      • VK_NUMPAD3

        public static final int VK_NUMPAD3
        数字键盘“3”键的常量。
        另请参见:
        常数字段值
      • VK_NUMPAD4

        public static final int VK_NUMPAD4
        数字键“4”键的常量。
        另请参见:
        常数字段值
      • VK_NUMPAD5

        public static final int VK_NUMPAD5
        数字键盘“5”键的常量。
        另请参见:
        常数字段值
      • VK_NUMPAD6

        public static final int VK_NUMPAD6
        数字键“6”键的常量。
        另请参见:
        常数字段值
      • VK_NUMPAD7

        public static final int VK_NUMPAD7
        数字键盘“7”键的常量。
        另请参见:
        常数字段值
      • VK_NUMPAD8

        public static final int VK_NUMPAD8
        数字键“8”键的常量。
        另请参见:
        常数字段值
      • VK_NUMPAD9

        public static final int VK_NUMPAD9
        数字键“9”键的常量。
        另请参见:
        常数字段值
      • 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_SEPARATOR常数字段值
      • VK_SEPARATOR

        public static final int VK_SEPARATOR
        Numpad Separator键的常量。
        从以下版本开始:
        1.4
        另请参见:
        常数字段值
      • 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_DELETE

        public static final int VK_DELETE
        删除键的常量。
        另请参见:
        常数字段值
      • VK_NUM_LOCK

        public static final int VK_NUM_LOCK
        NUM_LOCK键的常量。
        另请参见:
        常数字段值
      • VK_SCROLL_LOCK

        public static final int VK_SCROLL_LOCK
        SCROLL_LOCK键的常量。
        另请参见:
        常数字段值
      • VK_F1

        public static final int VK_F1
        F1功能键的常量。
        另请参见:
        常数字段值
      • VK_F2

        public static final int VK_F2
        F2功能键的常量。
        另请参见:
        常数字段值
      • VK_F3

        public static final int VK_F3
        F3功能键的常量。
        另请参见:
        常数字段值
      • VK_F4

        public static final int VK_F4
        F4功能键的常量。
        另请参见:
        常数字段值
      • VK_F5

        public static final int VK_F5
        F5功能键的常量。
        另请参见:
        常数字段值
      • VK_F6

        public static final int VK_F6
        F6功能键的常量。
        另请参见:
        常数字段值
      • VK_F7

        public static final int VK_F7
        F7功能键的常量。
        另请参见:
        常数字段值
      • VK_F8

        public static final int VK_F8
        F8功能键的常量。
        另请参见:
        常数字段值
      • VK_F9

        public static final int VK_F9
        F9功能键的常量。
        另请参见:
        常数字段值
      • VK_F10

        public static final int VK_F10
        F10功能键的常量。
        另请参见:
        常数字段值
      • VK_F11

        public static final int VK_F11
        F11功能键的常量。
        另请参见:
        常数字段值
      • VK_F12

        public static final int VK_F12
        F12功能键的常量。
        另请参见:
        常数字段值
      • VK_F13

        public static final int VK_F13
        F13功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_F14

        public static final int VK_F14
        F14功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_F15

        public static final int VK_F15
        F15功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_F16

        public static final int VK_F16
        F16功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_F17

        public static final int VK_F17
        F17功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_F18

        public static final int VK_F18
        F18功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_F19

        public static final int VK_F19
        F19功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_F20

        public static final int VK_F20
        F20功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_F21

        public static final int VK_F21
        F21功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_F22

        public static final int VK_F22
        F22功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_F23

        public static final int VK_F23
        F23功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_F24

        public static final int VK_F24
        F24功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_PRINTSCREEN

        public static final int VK_PRINTSCREEN
        PRINTSCREEN键的常量。
        另请参见:
        常数字段值
      • VK_INSERT

        public static final int VK_INSERT
        INSERT键的常量。
        另请参见:
        常数字段值
      • VK_HELP

        public static final int VK_HELP
        HELP键的常量。
        另请参见:
        常数字段值
      • VK_META

        public static final int VK_META
        META密钥的常量。
        另请参见:
        常数字段值
      • VK_BACK_QUOTE

        public static final int VK_BACK_QUOTE
        BACK_QUOTE键的常量。
        另请参见:
        常数字段值
      • VK_QUOTE

        public static final int VK_QUOTE
        QUOTE键的常量。
        另请参见:
        常数字段值
      • VK_KP_UP

        public static final int VK_KP_UP
        数字小键盘 向上箭头键的常量。
        从以下版本开始:
        1.2
        另请参见:
        VK_UP常数字段值
      • VK_KP_DOWN

        public static final int VK_KP_DOWN
        数字小键盘 向下箭头键的常量。
        从以下版本开始:
        1.2
        另请参见:
        VK_DOWN常数字段值
      • VK_KP_LEFT

        public static final int VK_KP_LEFT
        数字键盘 箭头键的常量。
        从以下版本开始:
        1.2
        另请参见:
        VK_LEFT常数字段值
      • VK_KP_RIGHT

        public static final int VK_KP_RIGHT
        数字键盘 箭头键的常量。
        从以下版本开始:
        1.2
        另请参见:
        VK_RIGHT常数字段值
      • VK_DEAD_GRAVE

        public static final int VK_DEAD_GRAVE
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_ACUTE

        public static final int VK_DEAD_ACUTE
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_CIRCUMFLEX

        public static final int VK_DEAD_CIRCUMFLEX
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_TILDE

        public static final int VK_DEAD_TILDE
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_MACRON

        public static final int VK_DEAD_MACRON
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_BREVE

        public static final int VK_DEAD_BREVE
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_ABOVEDOT

        public static final int VK_DEAD_ABOVEDOT
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_DIAERESIS

        public static final int VK_DEAD_DIAERESIS
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_ABOVERING

        public static final int VK_DEAD_ABOVERING
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_DOUBLEACUTE

        public static final int VK_DEAD_DOUBLEACUTE
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_CARON

        public static final int VK_DEAD_CARON
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_CEDILLA

        public static final int VK_DEAD_CEDILLA
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_OGONEK

        public static final int VK_DEAD_OGONEK
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_IOTA

        public static final int VK_DEAD_IOTA
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_VOICED_SOUND

        public static final int VK_DEAD_VOICED_SOUND
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DEAD_SEMIVOICED_SOUND

        public static final int VK_DEAD_SEMIVOICED_SOUND
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_AMPERSAND

        public static final int VK_AMPERSAND
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_ASTERISK

        public static final int VK_ASTERISK
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_QUOTEDBL

        public static final int VK_QUOTEDBL
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_LESS

        public static final int VK_LESS
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_GREATER

        public static final int VK_GREATER
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_BRACELEFT

        public static final int VK_BRACELEFT
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_BRACERIGHT

        public static final int VK_BRACERIGHT
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_AT

        public static final int VK_AT
        “@”键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_COLON

        public static final int VK_COLON
        “:”键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_CIRCUMFLEX

        public static final int VK_CIRCUMFLEX
        “^”键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_DOLLAR

        public static final int VK_DOLLAR
        “$”键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_EURO_SIGN

        public static final int VK_EURO_SIGN
        欧元货币符号键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_EXCLAMATION_MARK

        public static final int VK_EXCLAMATION_MARK
        常量为“!” 键。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_INVERTED_EXCLAMATION_MARK

        public static final int VK_INVERTED_EXCLAMATION_MARK
        倒置感叹号键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_LEFT_PARENTHESIS

        public static final int VK_LEFT_PARENTHESIS
        “(”键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_NUMBER_SIGN

        public static final int VK_NUMBER_SIGN
        “#”键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_PLUS

        public static final int VK_PLUS
        “+”键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_RIGHT_PARENTHESIS

        public static final int VK_RIGHT_PARENTHESIS
        “)”键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_UNDERSCORE

        public static final int VK_UNDERSCORE
        “_”键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_WINDOWS

        public static final int VK_WINDOWS
        Microsoft Windows“Windows”键的常量。 它用于键的左右两个版本。
        从以下版本开始:
        1.5
        另请参见:
        getKeyLocation()常数字段值
      • VK_CONTEXT_MENU

        public static final int VK_CONTEXT_MENU
        Microsoft Windows上下文菜单键的常量。
        从以下版本开始:
        1.5
        另请参见:
        常数字段值
      • VK_FINAL

        public static final int VK_FINAL
        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
        Accept或Commit功能键的常量。
        另请参见:
        常数字段值
      • VK_MODECHANGE

        public static final int VK_MODECHANGE
        MODECHANGE键的常量。
        另请参见:
        常数字段值
      • VK_ALPHANUMERIC

        public static final int VK_ALPHANUMERIC
        字母数字功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_KATAKANA

        public static final int VK_KATAKANA
        片假名功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_HIRAGANA

        public static final int VK_HIRAGANA
        平假名功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_FULL_WIDTH

        public static final int VK_FULL_WIDTH
        全角字符功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_HALF_WIDTH

        public static final int VK_HALF_WIDTH
        半宽字符功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_ROMAN_CHARACTERS

        public static final int VK_ROMAN_CHARACTERS
        罗马字符功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_ALL_CANDIDATES

        public static final int VK_ALL_CANDIDATES
        All Candidates功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_PREVIOUS_CANDIDATE

        public static final int VK_PREVIOUS_CANDIDATE
        上一个候选功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_CODE_INPUT

        public static final int VK_CODE_INPUT
        代码输入功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_JAPANESE_KATAKANA

        public static final int VK_JAPANESE_KATAKANA
        日语 - 片假名功能键的常量。 此键切换到日语输入法并选择其片假名输入模式。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_JAPANESE_HIRAGANA

        public static final int VK_JAPANESE_HIRAGANA
        日语 - 平假名功能键的常量。 此键切换到日语输入法并选择其平假名输入模式。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_JAPANESE_ROMAN

        public static final int VK_JAPANESE_ROMAN
        日语 - 罗马功能键的常量。 此键切换到日语输入法并选择其Roman-Direct输入模式。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_KANA_LOCK

        public static final int VK_KANA_LOCK
        锁定假名功能键的常量。 此键将键盘锁定为假名布局。
        从以下版本开始:
        1.3
        另请参见:
        常数字段值
      • VK_INPUT_METHOD_ON_OFF

        public static final int VK_INPUT_METHOD_ON_OFF
        输入法开/关键的常量。
        从以下版本开始:
        1.3
        另请参见:
        常数字段值
      • VK_CUT

        public static final int VK_CUT
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_COPY

        public static final int VK_COPY
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_PASTE

        public static final int VK_PASTE
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_UNDO

        public static final int VK_UNDO
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_AGAIN

        public static final int VK_AGAIN
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_FIND

        public static final int VK_FIND
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_PROPS

        public static final int VK_PROPS
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_STOP

        public static final int VK_STOP
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_COMPOSE

        public static final int VK_COMPOSE
        Compose功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_ALT_GRAPH

        public static final int VK_ALT_GRAPH
        AltGraph功能键的常量。
        从以下版本开始:
        1.2
        另请参见:
        常数字段值
      • VK_BEGIN

        public static final int VK_BEGIN
        Begin键的常量。
        从以下版本开始:
        1.5
        另请参见:
        常数字段值
      • VK_UNDEFINED

        public static final int VK_UNDEFINED
        此值用于指示keyCode未知。 KEY_TYPED事件没有keyCode值; 而是使用此值。
        另请参见:
        常数字段值
      • CHAR_UNDEFINED

        public static final char CHAR_UNDEFINED
        未映射到有效Unicode字符的KEY_PRESSED和KEY_RELEASED事件将此值用于keyChar值。
        另请参见:
        常数字段值
      • KEY_LOCATION_UNKNOWN

        public static final int KEY_LOCATION_UNKNOWN
        一个常量,指示keyLocation不确定或不相关。 KEY_TYPED事件没有keyLocation; 而是使用此值。
        从以下版本开始:
        1.4
        另请参见:
        常数字段值
      • KEY_LOCATION_STANDARD

        public static final int KEY_LOCATION_STANDARD
        一个常数,指示按下或释放的键不会被区分为键的左或右版本,并且不是源自数字键盘(或者不是源自与数字键盘对应的虚拟键)。
        从以下版本开始:
        1.4
        另请参见:
        常数字段值
      • KEY_LOCATION_LEFT

        public static final int KEY_LOCATION_LEFT
        一个常量,指示按下或释放的键位于左键位置(此键有多个可能的位置)。 示例:左移键。
        从以下版本开始:
        1.4
        另请参见:
        常数字段值
      • KEY_LOCATION_RIGHT

        public static final int KEY_LOCATION_RIGHT
        一个常量,指示按下或释放的键位于右键位置(此键有多个可能的位置)。 示例:右移键。
        从以下版本开始:
        1.4
        另请参见:
        常数字段值
      • KEY_LOCATION_NUMPAD

        public static final int KEY_LOCATION_NUMPAD
        一个常量,指示键事件源自数字小键盘或与数字小键盘对应的虚拟键。
        从以下版本开始:
        1.4
        另请参见:
        常数字段值
    • 构造方法详细信息

      • KeyEvent

        public KeyEvent​(Component source,
                        int id,
                        long when,
                        int modifiers,
                        int keyCode,
                        char keyChar,
                        int keyLocation)
        构造一个KeyEvent对象。

        此方法抛出IllegalArgumentException如果sourcenull

        参数
        source - 发起此事件的 Component
        id - 指示事件类型的整数。 有关允许值的信息,请参阅KeyEvent的类说明
        when - 一个长整数,指定事件发生的时间。 建议不要传递负值或零值
        modifiers - 修改器在事件期间按下键(shift,ctrl,alt,meta)。 不建议传递负值。 零值表示没有传递修饰符。 使用扩展的_DOWN_MASK或旧的_MASK修饰符,但不要在一个事件中混合模型。 扩展的改性剂优选用于使用
        keyCode - 实际密钥的整数代码,或VK_UNDEFINED(用于密钥类型事件)
        keyChar - 此事件生成的Unicode字符,或CHAR_UNDEFINED(对于未映射到有效Unicode字符的按键和键释放事件)
        keyLocation - 标识密钥位置。 唯一的合法值是KEY_LOCATION_UNKNOWNKEY_LOCATION_STANDARDKEY_LOCATION_LEFTKEY_LOCATION_RIGHTKEY_LOCATION_NUMPAD
        异常
        IllegalArgumentException - 如果idKEY_TYPEDkeyCharCHAR_UNDEFINED ; 或者如果idKEY_TYPEDkeyCode不是VK_UNDEFINED ; 或者如果idKEY_TYPEDkeyLocation不是KEY_LOCATION_UNKNOWN ; 或者如果keyLocation不是上面列举的合法值之一。
        IllegalArgumentException - 如果 source为空
        从以下版本开始:
        1.4
        另请参见:
        EventObject.getSource()AWTEvent.getID()InputEvent.getWhen()InputEvent.getModifiers()getKeyCode()getKeyChar()getKeyLocation()
      • KeyEvent

        public KeyEvent​(Component source,
                        int id,
                        long when,
                        int modifiers,
                        int keyCode,
                        char keyChar)
        构造一个KeyEvent对象。

        此方法抛出IllegalArgumentException如果sourcenull

        参数
        source - 发起此事件的 Component
        id - 指示事件类型的整数。 有关允许值的信息,请参阅KeyEvent的类说明
        when - 一个长整数,指定事件发生的时间。 建议不要传递负值或零值
        modifiers - 修改器在事件期间按下键(shift,ctrl,alt,meta)。 不建议传递负值。 零值表示没有传递修饰符。 使用扩展的_DOWN_MASK或旧的_MASK修饰符,但不要在一个事件中混合模型。 扩展的改性剂优选用于使用
        keyCode - 实际密钥的整数代码,或VK_UNDEFINED(用于密钥类型事件)
        keyChar - 此事件生成的Unicode字符,或CHAR_UNDEFINED(对于未映射到有效Unicode字符的按键和键释放事件)
        异常
        IllegalArgumentException - 如果idKEY_TYPEDkeyCharCHAR_UNDEFINED ; 或者如果idKEY_TYPEDkeyCode不是VK_UNDEFINED
        IllegalArgumentException - 如果 source为空
        另请参见:
        EventObject.getSource()AWTEvent.getID()InputEvent.getWhen()InputEvent.getModifiers()getKeyCode()getKeyChar()
      • KeyEvent

        @Deprecated
        public KeyEvent​(Component source,
                        int id,
                        long when,
                        int modifiers,
                        int keyCode)
        Deprecated.
        参数
        source - 发起此事件的 Component
        id - 指示事件类型的整数。 有关允许值的信息,请参阅KeyEvent的类说明
        when - 一个长整数,指定事件发生的时间。 建议不要传递负值或零值
        modifiers - 修改器在事件期间按下键(shift,ctrl,alt,meta)。 不建议传递负值。 零值表示没有传递修饰符。 使用扩展的_DOWN_MASK或旧的_MASK修饰符,但不要在一个事件中混合模型。 扩展的改性剂优选用于使用
        keyCode - 实际密钥的整数代码,或VK_UNDEFINED(用于密钥类型事件)
    • 方法详细信息

      • getKeyCode

        public int getKeyCode()
        返回与此事件中的键关联的整数keyCode。
        结果
        键盘上实际键的整数代码。 (对于KEY_TYPED事件,keyCode为VK_UNDEFINED
      • setKeyCode

        public void setKeyCode​(int keyCode)
        设置keyCode值以指示物理键。
        参数
        keyCode - 与键盘上的实际键对应的整数。
      • getKeyChar

        public char getKeyChar()
        返回与此事件中的键关联的字符。 例如,shift +“a”的KEY_TYPED事件返回“A”的值。

        KEY_PRESSEDKEY_RELEASED事件不用于报告字符输入。 因此,此方法返回的值保证仅对KEY_TYPED事件有意义。

        结果
        为此键事件定义的Unicode字符。 如果此键事件不存在有效的Unicode字符,则返回CHAR_UNDEFINED
      • setKeyChar

        public void setKeyChar​(char keyChar)
        设置keyChar值以指示逻辑字符。
        参数
        keyChar - 对应于组成此事件的击键组合的char。
      • setModifiers

        @Deprecated
        public void setModifiers​(int modifiers)
        Deprecated.
        as of JDK1.1.4
        设置修饰符以指示作为InputEvent的一部分定义的按下的其他键(例如shift,ctrl,alt,meta)。

        注意:不建议使用此方法,因为许多AWT实现无法识别修改器更改。 对于KEY_TYPED了shift修改器的KEY_TYPED事件尤其如此。

        参数
        modifiers - 修饰符常量的整数组合。
        另请参见:
        InputEvent
      • getKeyLocation

        public int getKeyLocation()
        返回发起此键事件的键的位置。 某些键在键盘上出现不止一次,例如左右移位键。 此外,某些键出现在数字小键盘上。 这提供了区分这些键的方法。
        结果
        按下或释放的键的位置。 对于KEY_TYPED事件,始终返回KEY_LOCATION_UNKNOWN
        从以下版本开始:
        1.4
      • getKeyText

        public static String getKeyText​(int keyCode)
        返回描述keyCode的String,例如“HOME”,“F1”或“A”。 可以通过更改awt.properties文件来本地化这些字符串。
        参数
        keyCode - 要返回其描述的密钥
        结果
        包含物理键的文本描述的字符串,由其keyCode标识
      • getKeyModifiersText

        @Deprecated(since="9")
        public static String getKeyModifiersText​(int modifiers)
        Deprecated.
        It is recommended that extended modifier keys and InputEvent.getModifiersExText(int) be used instead
        返回描述修改键的String ,例如“Shift”或“Ctrl + Shift”。 可以通过更改awt.properties文件来本地化这些字符串。

        请注意, InputEvent.ALT_MASKInputEvent.BUTTON2_MASK具有相同的值,因此两个修饰符都返回字符串“Alt”。 同样, InputEvent.META_MASKInputEvent.BUTTON3_MASK具有相同的值,因此为两个修饰符返回字符串“Meta”。

        参数
        modifiers - 要处理的修饰符掩码
        结果
        字符串在事件期间按下的修改键组合的文本描述
        另请参见:
        InputEvent.getModifiersExText(int)
      • isActionKey

        public boolean isActionKey()
        返回此事件中的键是否为“action”键。 通常,操作键不会触发unicode字符,也不是修饰键。
        结果
        true如果密钥是“action”密钥, false
      • paramString

        public String paramString()
        返回标识此事件的参数字符串。 此方法对于事件记录和调试很有用。
        重写:
        paramStringComponentEvent
        结果
        标识事件及其属性的字符串
      • getExtendedKeyCode

        public int getExtendedKeyCode()
        返回事件的扩展键代码。 扩展键码是分配给键盘上键的唯一ID,就像keyCode一样。 但是,与keyCode不同,此值取决于当前的键盘布局。 例如,在一个共同的英文布局按左最上面的字母键的值相同keyCodeVK_Q 按照常规俄语布局中的相同键给出另一个代码,对于字母“Cyrillic I short”而言是唯一的。
        结果
        事件的扩展密钥代码
        从以下版本开始:
        1.7
      • getExtendedKeyCodeForChar

        public static int getExtendedKeyCodeForChar​(int c)
        返回unicode字符的扩展键代码。
        参数
        c - 要处理的unicode字符
        结果
        对于具有相应的VK_常数的unicode字符 - 此VK_常量; 对于出现在已知键盘布局的主要级别上的字符 - 唯一的整数。 如果角色未出现在已知键盘的主要级别上,则返回VK_UNDEFINED
        从以下版本开始:
        1.7