- 所有已实现的接口:
-
Serializable
- 直接已知的子类:
-
MenuKeyEvent
当按下、释放或键入键时,此低级事件由组件对象(例如文本字段)生成。事件传递给每个使用组件的addKeyListener
方法注册接收此类事件的KeyListener
或KeyAdapter
对象。(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
方法也可用于许多国际键盘布局。
“按下”和“释放”事件是更低级的事件,取决于平台和键盘布局。每当按下或释放按键时生成这些事件,并且是查找不生成字符输入的按键(例如,操作键、修饰键等)的唯一方法。按下或释放的按键由getKeyCode
和getExtendedKeyCode
方法指示,它们返回虚拟键码。
虚拟键码用于报告按下的键盘键,而不是由一个或多个按键组合生成的字符(例如,“A”,它来自Shift和“a”)。
例如,按下Shift键将导致具有VK_SHIFT keyCode的KEY_PRESSED事件,而按下“a”键将导致VK_A keyCode。释放“a”键后,将触发具有VK_A的KEY_RELEASED事件。另外,将生成具有键字符值“A”的KEY_TYPED事件。
在键盘上按下和释放按键会生成以下按键事件(按顺序):
但在某些情况下(例如自动重复或激活输入法),顺序可能不同(并且依赖于平台)。KEY_PRESSED
KEY_TYPED
(仅在可以生成有效的Unicode字符时生成。)KEY_RELEASED
注意:
- 不会生成不生成Unicode字符的按键组合的KEY_TYPED事件,例如F1和HELP键等操作键。
- 并非所有键盘或系统都能生成所有虚拟键码。Java中不会尝试人工生成这些键。
- 虚拟键码不标识物理键:它们取决于平台和键盘布局。例如,使用美国键盘布局时生成VK_Q的键将在使用法国键盘布局时生成VK_A。
- 使用美国键盘布局时生成VK_Q的键也会在俄语或希伯来语布局中生成唯一代码。这些代码可以通过
getExtendedKeyCode
获得,并且在使用VK_
常量时使用。 - 并非所有字符都有与之关联的键码。例如,问号没有键码,因为没有键盘上的主要层中出现它。
- 为了支持平台独立处理操作键,Java平台使用了一些额外的虚拟键常量,用于必须通过解释虚拟键码和修饰符来识别的功能。例如,对于日语Windows键盘,返回VK_CONVERT而不是带有ALT修饰符的VK_ALL_CANDIDATES。
- 如在焦点规范中指定的,默认情况下,键事件被分派给焦点所有者。
警告:除了Java语言定义的那些键(VK_ENTER、VK_BACK_SPACE和VK_TAB),不要依赖VK_常量的值。平台管理者保留根据需要更改这些值以适应将来更广泛范围的键盘的权利。
如果任何特定KeyEvent
实例的id
参数不在KEY_FIRST
到KEY_LAST
范围内,将导致未指定的行为。
- 自:
- 1.1
- 参见:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final char
未映射到有效Unicode字符的KEY_PRESSED和KEY_RELEASED事件使用此键字符值。static final int
用于按键事件的ID范围中的第一个数字。static final int
用于按键事件的ID范围中的最后一个数字。static final int
表示按下或释放的键位于左侧键位(此键有多个可能位置)。static final int
表示按下或释放的键位于数字键盘上或对应于数字键盘的虚拟键。static final int
表示按下或释放的键位于右侧键位(此键有多个可能位置)。static final int
表示按下或释放的键不区分为键的左侧或右侧版本,并且未在数字键盘上按下(或未使用对应于数字键盘的虚拟键)。static final int
表示键位位置不确定或不相关。static final int
“按下”事件。static final int
“释放”事件。static final int
“键入”事件。static final int
“0”键的常量。static final int
“1”键的常量。static final int
“2”键的常量。static final int
“3”键的常量。static final int
“4”键的常量。static final int
“5”键的常量。static final int
“6”键的常量。static final int
“7”键的常量。static final int
“8”键的常量。static final int
“9”键的常量。static final int
“A”键的常量。static final int
接受或提交功能键的常量。static final int
数字键盘加键的常量。static final int
再次键的常量。static final int
所有候选人功能键的常量。static final int
字母数字功能键的常量。static final int
ALT虚拟键的常量。static final int
AltGraph功能键的常量。static final int
“&”键的常量。static final int
“*”键的常量。static final int
“@”键的常量。static final int
“B”键的常量。static final int
BACK_QUOTE键的常量。static final int
反斜杠键“\”的常量。static final int
BACK_SPACE虚拟键的常量。static final int
Begin键的常量。static final int
“{”键的常量。static final int
“}”键的常量。static final int
“C”键的常量。static final int
CANCEL虚拟键的常量。static final int
CAPS_LOCK虚拟键的常量。static final int
“^”键的常量。static final int
CLEAR虚拟键的常量。static final int
关闭括号键“]”的常量。static final int
代码输入功能键的常量。static final int
“:”键的常量。static final int
逗号键“,”的常量。static final int
组合功能键的常量。static final int
Microsoft Windows上下文菜单键的常量。static final int
CONTROL虚拟键的常量。static final int
转换功能键的常量。static final int
复制键的常量。static final int
剪切键的常量。static final int
“D”键的常量。static final int
上面的死点键的常量。static final int
上面的环键的常量。static final int
死音调键的常量。static final int
死短音键的常量。static final int
死颤音键的常量。static final int
死西里尔字母键的常量。static final int
死圆圈键的常量。static final int
死分音符键的常量。static final int
死双重锐音键的常量。static final int
死重音键的常量。static final int
死伊奥塔键的常量。static final int
死长音键的常量。static final int
死鼻音键的常量。static final int
死半浊音键的常量。static final int
死颚化音键的常量。static final int
死浊音键的常量。static final int
数字键盘小数点键的常量。static final int
删除键的常量。static final int
数字键盘除号键的常量。static final int
"$"键的常量。static final int
非数字键盘向下箭头键的常量。static final int
"E"键的常量。static final int
END虚拟键的常量。static final int
ENTER虚拟键的常量。static final int
等于键的常量,"="static final int
ESCAPE虚拟键的常量。static final int
欧元货币符号键的常量。static final int
"!"键的常量。static final int
"F"键的常量。static final int
F1功能键的常量。static final int
F10功能键的常量。static final int
F11功能键的常量。static final int
F12功能键的常量。static final int
F13功能键的常量。static final int
F14功能键的常量。static final int
F15功能键的常量。static final int
F16功能键的常量。static final int
F17功能键的常量。static final int
F18功能键的常量。static final int
F19功能键的常量。static final int
F2功能键的常量。static final int
F20功能键的常量。static final int
F21功能键的常量。static final int
F22功能键的常量。static final int
F23功能键的常量。static final int
F24功能键的常量。static final int
F3功能键的常量。static final int
F4功能键的常量。static final int
F5功能键的常量。static final int
F6功能键的常量。static final int
F7功能键的常量。static final int
F8功能键的常量。static final int
F9功能键的常量。static final int
FINAL键的常量。static final int
查找键的常量。static final int
全角字符功能键的常量。static final int
"G"键的常量。static final int
">"键的常量。static final int
"H"键的常量。static final int
半角字符功能键的常量。static final int
帮助键的常量。static final int
平假名功能键的常量。static final int
HOME虚拟键的常量。static final int
"I"键的常量。static final int
输入法开/关键的常量。static final int
INSERT键的常量。static final int
倒叹号键的常量。static final int
"J"键的常量。static final int
日文平假名功能键的常量。static final int
日文片假名功能键的常量。static final int
日文罗马字功能键的常量。static final int
"K"键的常量。static final int
片假名锁定键的常量。static final int
锁定片假名功能键的常量。static final int
汉字键的常量。static final int
片假名功能键的常量。static final int
数字键盘向下箭头键的常量。static final int
数字键盘向左箭头键的常量。static final int
数字键盘向右箭头键的常量。static final int
数字键盘向上箭头键的常量。static final int
"L"键的常量。static final int
非数字键盘向左箭头键的常量。static final int
"("键的常量。static final int
"<"键的常量。static final int
"M"键的常量。static final int
META键的常量。static final int
减号键的常量,"-"static final int
MODECHANGE键的常量。static final int
数字键盘乘法键的常量。static final int
"N"键的常量。static final int
不转换功能键的常量。static final int
NUM_LOCK键的常量。static final int
"#"键的常量。static final int
数字键盘"0"键的常量。static final int
数字键盘"1"键的常量。static final int
数字键盘"2"键的常量。static final int
数字键盘"3"键的常量。static final int
数字键盘"4"键的常量。static final int
数字键盘"5"键的常量。static final int
数字键盘"6"键的常量。static final int
数字键盘"7"键的常量。static final int
数字键盘"8"键的常量。static final int
数字键盘"9"键的常量。static final int
"O"键的常量。static final int
开方括号键的常量,"["static final int
"P"键的常量。static final int
PAGE_DOWN虚拟键的常量。static final int
PAGE_UP虚拟键的常量。static final int
粘贴键的常量。static final int
PAUSE虚拟键的常量。static final int
句号键的常量,"."static final int
"+"键的常量。static final int
前一个候选项功能键的常量。static final int
PRINTSCREEN键的常量。static final int
Props键的常量。static final int
"Q"键的常量。static final int
引号键的常量。static final int
""""键的常量。static final int
"R"键的常量。static final int
非数字键盘向右箭头键的常量。static final int
")"键的常量。static final int
罗马字符功能键的常量。static final int
"S"键的常量。static final int
SCROLL_LOCK键的常量。static final int
分号键的常量,";"static final int
此常量已过时,仅用于向后兼容。static final int
数字键盘分隔键的常量。static final int
SHIFT虚拟键的常量。static final int
斜杠键的常量,"/"static final int
空格虚拟键的常量。static final int
停止键的常量。static final int
数字键盘减法键的常量。static final int
"T"键的常量。static final int
TAB虚拟键的常量。static final int
"U"键的常量。static final int
此值用于指示未知的keyCode。static final int
下划线键的常量。static final int
撤销键的常量。static final int
非数字键盘向上箭头键的常量。static final int
"V"键的常量。static final int
"W"键的常量。static final int
Microsoft Windows "Windows"键的常量。static final int
"X"键的常量。static final int
"Y"键的常量。static final int
"Z"键的常量。Fields declared in class java.awt.event.InputEvent
ALT_DOWN_MASK, ALT_GRAPH_DOWN_MASK, ALT_GRAPH_MASK, ALT_MASK, BUTTON1_DOWN_MASK, BUTTON1_MASK, BUTTON2_DOWN_MASK, BUTTON2_MASK, BUTTON3_DOWN_MASK, BUTTON3_MASK, CTRL_DOWN_MASK, CTRL_MASK, META_DOWN_MASK, META_MASK, SHIFT_DOWN_MASK, SHIFT_MASK
Fields declared in class java.awt.event.ComponentEvent
COMPONENT_FIRST, COMPONENT_HIDDEN, COMPONENT_LAST, COMPONENT_MOVED, COMPONENT_RESIZED, COMPONENT_SHOWN
Fields declared in class java.awt.AWTEvent
ACTION_EVENT_MASK, ADJUSTMENT_EVENT_MASK, COMPONENT_EVENT_MASK, consumed, CONTAINER_EVENT_MASK, FOCUS_EVENT_MASK, HIERARCHY_BOUNDS_EVENT_MASK, HIERARCHY_EVENT_MASK, id, INPUT_METHOD_EVENT_MASK, INVOCATION_EVENT_MASK, ITEM_EVENT_MASK, KEY_EVENT_MASK, MOUSE_EVENT_MASK, MOUSE_MOTION_EVENT_MASK, MOUSE_WHEEL_EVENT_MASK, PAINT_EVENT_MASK, RESERVED_ID_MAX, TEXT_EVENT_MASK, WINDOW_EVENT_MASK, WINDOW_FOCUS_EVENT_MASK, WINDOW_STATE_EVENT_MASK
Fields declared in class java.util.EventObject
source
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
返回事件的扩展键代码。static int
getExtendedKeyCodeForChar
(int c) 返回Unicode字符的扩展键代码。char
返回此事件中与键关联的字符。int
返回与此事件中的键关联的整数keyCode。int
返回产生此键事件的键的位置。static String
getKeyModifiersText
(int modifiers) 已过时。建议改用扩展修饰键和InputEvent.getModifiersExText(int)
static String
getKeyText
(int keyCode) 返回描述keyCode的字符串,例如"HOME"、"F1"或"A"。boolean
返回此事件中的键是否为"动作"键。返回标识此事件的参数字符串。void
setKeyChar
(char keyChar) 将keyChar值设置为指示逻辑字符。void
setKeyCode
(int keyCode) 将keyCode值设置为指示物理键。void
setModifiers
(int modifiers) 已过时。自JDK1.1.4起Methods declared in class java.awt.event.InputEvent
consume, getMaskForButton, getModifiers, getModifiersEx, getModifiersExText, getWhen, isAltDown, isAltGraphDown, isConsumed, isControlDown, isMetaDown, isShiftDown
Methods declared in class java.awt.event.ComponentEvent
getComponent
Methods declared in class java.util.EventObject
getSource
-
Field Details
-
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_ENTERENTER虚拟键的常量。- 参见:
-
VK_BACK_SPACE
public static final int VK_BACK_SPACEBACK_SPACE虚拟键的常量。- 参见:
-
VK_TAB
public static final int VK_TABTAB虚拟键的常量。- 参见:
-
VK_CANCEL
public static final int VK_CANCELCANCEL虚拟键的常量。- 参见:
-
VK_CLEAR
public static final int VK_CLEARCLEAR虚拟键的常量。- 参见:
-
VK_SHIFT
public static final int VK_SHIFTSHIFT虚拟键的常量。- 参见:
-
VK_CONTROL
public static final int VK_CONTROLCONTROL虚拟键的常量。- 参见:
-
VK_ALT
public static final int VK_ALTALT虚拟键的常量。- 参见:
-
VK_PAUSE
public static final int VK_PAUSEPAUSE虚拟键的常量。- 参见:
-
VK_CAPS_LOCK
public static final int VK_CAPS_LOCKCAPS_LOCK虚拟键的常量。- 参见:
-
VK_ESCAPE
public static final int VK_ESCAPEESCAPE虚拟键的常量。- 参见:
-
VK_SPACE
public static final int VK_SPACESPACE虚拟键的常量。- 参见:
-
VK_PAGE_UP
public static final int VK_PAGE_UPPAGE_UP虚拟键的常量。- 参见:
-
VK_PAGE_DOWN
public static final int VK_PAGE_DOWNPAGE_DOWN虚拟键的常量。- 参见:
-
VK_END
public static final int VK_ENDEND虚拟键的常量。- 参见:
-
VK_HOME
public static final int VK_HOMEHOME虚拟键的常量。- 参见:
-
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_MINUS
public static final int VK_MINUS减号键的常量,"-"- 自JDK版本:
- 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
public static final int VK_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_LOCKNUM_LOCK 键的常量。- 参见:
-
VK_SCROLL_LOCK
public static final int VK_SCROLL_LOCKSCROLL_LOCK 键的常量。- 参见:
-
VK_F1
public static final int VK_F1F1 功能键的常量。- 参见:
-
VK_F2
public static final int VK_F2F2功能键的常量。- 参见:
-
VK_F3
public static final int VK_F3F3功能键的常量。- 参见:
-
VK_F4
public static final int VK_F4F4功能键的常量。- 参见:
-
VK_F5
public static final int VK_F5F5功能键的常量。- 参见:
-
VK_F6
public static final int VK_F6F6功能键的常量。- 参见:
-
VK_F7
public static final int VK_F7F7功能键的常量。- 参见:
-
VK_F8
public static final int VK_F8F8功能键的常量。- 参见:
-
VK_F9
public static final int VK_F9F9功能键的常量。- 参见:
-
VK_F10
public static final int VK_F10F10功能键的常量。- 参见:
-
VK_F11
public static final int VK_F11F11功能键的常量。- 参见:
-
VK_F12
public static final int VK_F12F12功能键的常量。- 参见:
-
VK_F13
public static final int VK_F13F13功能键的常量。- 自:
- 1.2
- 参见:
-
VK_F14
public static final int VK_F14F14功能键的常量。- 自:
- 1.2
- 参见:
-
VK_F15
public static final int VK_F15F15功能键的常量。- 自:
- 1.2
- 参见:
-
VK_F16
public static final int VK_F16F16功能键的常量。- 自:
- 1.2
- 参见:
-
VK_F17
public static final int VK_F17F17功能键的常量。- 自:
- 1.2
- 参见:
-
VK_F18
public static final int VK_F18F18功能键的常量。- 自:
- 1.2
- 参见:
-
VK_F19
public static final int VK_F19F19功能键的常量。- 自:
- 1.2
- 参见:
-
VK_F20
public static final int VK_F20F20功能键的常量。- 自:
- 1.2
- 参见:
-
VK_F21
public static final int VK_F21F21功能键的常量。- 自:
- 1.2
- 参见:
-
VK_F22
public static final int VK_F22F22功能键的常量。- 自:
- 1.2
- 参见:
-
VK_F23
public static final int VK_F23F23功能键的常量。- 自:
- 1.2
- 参见:
-
VK_F24
public static final int VK_F24F24功能键的常量。- 自:
- 1.2
- 参见:
-
VK_PRINTSCREEN
public static final int VK_PRINTSCREENPRINTSCREEN键的常量。- 参见:
-
VK_INSERT
public static final int VK_INSERTINSERT键的常量。- 参见:
-
VK_HELP
public static final int VK_HELPHELP键的常量。- 参见:
-
VK_META
public static final int VK_METAMETA键的常量。- 参见:
-
VK_BACK_QUOTE
public static final int VK_BACK_QUOTEBACK_QUOTE键的常量。- 参见:
-
VK_QUOTE
public static final int VK_QUOTEQUOTE键的常量。- 参见:
-
VK_KP_UP
public static final int VK_KP_UP数字键盘上箭头键的常量。- 自:
- 1.2
- 参见:
-
VK_KP_DOWN
public static final int VK_KP_DOWN数字键盘下箭头键的常量。- 自:
- 1.2
- 参见:
-
VK_KP_LEFT
public static final int VK_KP_LEFT数字键盘左箭头键的常量。- 自:
- 1.2
- 参见:
-
VK_KP_RIGHT
public static final int VK_KP_RIGHT数字键盘右箭头键的常量。- 自:
- 1.2
- 参见:
-
VK_DEAD_GRAVE
public static final int VK_DEAD_GRAVEDead Grave键的常量。- 自:
- 1.2
- 参见:
-
VK_DEAD_ACUTE
public static final int VK_DEAD_ACUTEDead Acute键的常量。- 自:
- 1.2
- 参见:
-
VK_DEAD_CIRCUMFLEX
public static final int VK_DEAD_CIRCUMFLEXDead Circumflex键的常量。- 自:
- 1.2
- 参见:
-
VK_DEAD_TILDE
public static final int VK_DEAD_TILDEDead Tilde键的常量。- 自:
- 1.2
- 参见:
-
VK_DEAD_MACRON
public static final int VK_DEAD_MACRONDead Macron键的常量。- 自:
- 1.2
- 参见:
-
VK_DEAD_BREVE
public static final int VK_DEAD_BREVEDead 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_WINDOWSMicrosoft Windows "Windows"键的常量。用于左右两个版本的键。- 自从:
- 1.5
- 参见:
-
VK_CONTEXT_MENU
public static final int VK_CONTEXT_MENUMicrosoft Windows上下文菜单键的常量。- 自从:
- 1.5
- 参见:
-
VK_FINAL
public static final int VK_FINALFINAL键的常量。- 参见:
-
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_MODECHANGEMODECHANGE键的常量。- See Also:
-
VK_KANA
public static final int VK_KANAConstant for the KANA lock key.- 参见:
-
VK_KANJI
public static final int VK_KANJIKANJI的常量。- 参见:
-
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所有候选人功能键的常量。- 自:
- 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日文罗马字功能键的常量。此键切换到日文输入法并选择罗马直接输入模式。- 自:
- 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组合功能键的常量。- 自:
- 1.2
- 参见:
-
VK_ALT_GRAPH
public static final int VK_ALT_GRAPHAltGraph功能键的常量。- 自:
- 1.2
- 参见:
-
VK_BEGIN
public static final int VK_BEGIN开始键的常量。- 自:
- 1.5
- 参见:
-
VK_UNDEFINED
public static final int VK_UNDEFINED此值用于指示keyCode未知。KEY_TYPED事件没有keyCode值;而是使用此值。- 参见:
-
CHAR_UNDEFINED
public static final char CHAR_UNDEFINEDKEY_PRESSED和KEY_RELEASED事件中未映射到有效Unicode字符的键使用此键值。- 参见:
-
KEY_LOCATION_UNKNOWN
public static final int KEY_LOCATION_UNKNOWN表示键位置不明确或不相关的常量。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表示按下或释放的键位于左侧键位置(此键有多个可能的位置)。例如:左Shift键。- 自:
- 1.4
- 参见:
-
KEY_LOCATION_RIGHT
public static final int KEY_LOCATION_RIGHT表示按下或释放的键位于右侧键位置(此键有多个可能的位置)。例如:右Shift键。- 自:
- 1.4
- 参见:
-
KEY_LOCATION_NUMPAD
public static final int KEY_LOCATION_NUMPAD表示键事件源自数字键盘或与数字键盘对应的虚拟键。- 自从:
- 1.4
- 参见:
-
-
Constructor Details
-
KeyEvent
public KeyEvent(Component source, int id, long when, int modifiers, int keyCode, char keyChar, int keyLocation) 构造一个KeyEvent
对象。如果
source
为null
,则此方法会抛出IllegalArgumentException
异常。- 参数:
-
source
- 产生事件的Component
-
id
- 表示事件类型的整数。有关允许值的信息,请参阅KeyEvent
的类描述 -
when
- 指定事件发生的时间的长整型值。不建议传递负值或零值 -
modifiers
- 事件期间按下的修饰键(shift、ctrl、alt、meta)。不建议传递负值。零值表示未传递任何修饰键。在一个事件中使用扩展的_DOWN_MASK或旧的_MASK修饰符,但不要在一个事件中混合模型。推荐使用扩展修饰符 -
keyCode
- 实际按键的整数代码,或VK_UNDEFINED(用于按键类型事件) -
keyChar
- 此事件生成的Unicode字符,或CHAR_UNDEFINED(对于不映射到有效Unicode字符的按键按下和按键释放事件) -
keyLocation
- 标识按键位置。唯一合法的值是KEY_LOCATION_UNKNOWN
、KEY_LOCATION_STANDARD
、KEY_LOCATION_LEFT
、KEY_LOCATION_RIGHT
和KEY_LOCATION_NUMPAD
- 抛出:
-
IllegalArgumentException
- 如果id
为KEY_TYPED
且keyChar
为CHAR_UNDEFINED
;或者如果id
为KEY_TYPED
且keyCode
不是VK_UNDEFINED
;或者如果id
为KEY_TYPED
且keyLocation
不是KEY_LOCATION_UNKNOWN
;或者如果keyLocation
不是上述合法值之一 -
IllegalArgumentException
- 如果source
为null - 自从:
- 1.4
- 参见:
-
KeyEvent
构造一个KeyEvent
对象。如果
source
为null
,则此方法会抛出IllegalArgumentException
异常。- 参数:
-
source
- 产生事件的Component
-
id
- 表示事件类型的整数。有关允许值的信息,请参阅KeyEvent
的类描述 -
when
- 指定事件发生的时间的长整型值。不建议传递负值或零值 -
modifiers
- 事件期间按下的修饰键(shift、ctrl、alt、meta)。不建议传递负值。零值表示未传递任何修饰键。在一个事件中使用扩展的_DOWN_MASK或旧的_MASK修饰符,但不要在一个事件中混合模型。推荐使用扩展修饰符 -
keyCode
- 实际按键的整数代码,或VK_UNDEFINED(用于按键类型事件) -
keyChar
- 此事件生成的Unicode字符,或CHAR_UNDEFINED(对于不映射到有效Unicode字符的按键按下和按键释放事件) - 抛出:
-
IllegalArgumentException
- 如果id
为KEY_TYPED
且keyChar
为CHAR_UNDEFINED
;或者如果id
为KEY_TYPED
且keyCode
不是VK_UNDEFINED
-
IllegalArgumentException
- 如果source
为null - 参见:
-
KeyEvent
Deprecated.as of JDK1.1; useKeyEvent(Component, int, long, int, int, char)
instead- 参数:
-
source
- 产生事件的Component
-
id
- 表示事件类型的整数。有关允许值的信息,请参阅KeyEvent
的类描述 -
when
- 指定事件发生的时间的长整型值。不建议传递负值或零值 -
modifiers
- 事件期间按下的修饰键(shift、ctrl、alt、meta)。不建议传递负值。零值表示未传递任何修饰键。在一个事件中使用扩展的_DOWN_MASK或旧的_MASK修饰符,但不要在一个事件中混合模型。推荐使用扩展修饰符 -
keyCode
- 实际按键的整数代码,或VK_UNDEFINED(用于按键类型事件)
-
-
Method Details
-
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_PRESSED
和KEY_RELEASED
事件不适用于报告字符输入。因此,此方法返回的值仅对KEY_TYPED
事件有意义。- 返回:
-
此按键事件定义的Unicode字符。如果此按键事件没有有效的Unicode字符,则返回
CHAR_UNDEFINED
。
-
setKeyChar
public void setKeyChar(char keyChar) 将keyChar值设置为指示逻辑字符。- 参数:
-
keyChar
- 与构成此事件的按键组合对应的字符。
-
setModifiers
Deprecated.as of JDK1.1.4将修饰键设置为指示事件期间按下的其他键(例如shift、ctrl、alt、meta),定义为InputEvent的一部分。注意:不建议使用此方法,因为许多AWT实现不识别修饰键的更改。这在
KEY_TYPED
事件中尤其明显,其中shift修饰键发生变化。- 参数:
-
modifiers
- 修饰符常量的整数组合。 - 参见:
-
getKeyLocation
public int getKeyLocation()返回产生此按键事件的按键位置。键盘上的某些按键出现多次,例如左右shift键。此外,某些按键出现在数字键盘上。这提供了一种区分这些按键的方法。- 返回:
-
按下或释放的按键的位置。对于
KEY_TYPED
事件,始终返回KEY_LOCATION_UNKNOWN
。 - 自从:
- 1.4
-
getKeyText
返回描述keyCode的字符串,例如"HOME"、"F1"或"A"。这些字符串可以通过更改awt.properties文件进行本地化。- 参数:
-
keyCode
- 要返回其描述的按键 - 返回:
- 包含由其keyCode标识的物理按键的文本描述的字符串
-
getKeyModifiersText
Deprecated.It is recommended that extended modifier keys andInputEvent.getModifiersExText(int)
be used instead返回描述修饰键的字符串,例如"Shift"或"Ctrl+Shift"。这些字符串可以通过更改awt.properties
文件进行本地化。请注意,
InputEvent.ALT_MASK
和InputEvent.BUTTON2_MASK
具有相同的值,因此对于这两个修饰键都返回字符串"Alt"。同样,InputEvent.META_MASK
和InputEvent.BUTTON3_MASK
具有相同的值,因此对于这两个修饰键都返回字符串"Meta"。- 参数:
-
modifiers
- 要处理的修饰符掩码 - 返回:
- 一个描述事件期间按下的修饰键组合的文本描述字符串
- 参见:
-
isActionKey
public boolean isActionKey()返回此事件中的按键是否为"操作"键。通常,操作键不会触发Unicode字符,也不是修饰键。- 返回:
-
如果按键是"操作"键,则返回
true
,否则返回false
-
paramString
返回标识此事件的参数字符串。此方法对于事件记录和调试很有用。- 覆盖:
-
paramString
在类ComponentEvent
- 返回:
- 标识事件及其属性的字符串
-
getExtendedKeyCode
public int getExtendedKeyCode()返回事件的扩展键码。扩展键码是分配给键盘上的一个键的唯一标识,就像keyCode
一样。但是,与keyCode
不同,这个值取决于当前的键盘布局。例如,在常见的英语布局中按下左上角的字母键会产生与keyCode
相同的值,VK_Q
。在常规的俄语布局中按下相同的键会产生另一个代码,对于字母"Cyrillic I short"是唯一的。- 返回:
- 事件的扩展键码
- 自:
- 1.7
-
getExtendedKeyCodeForChar
public static int getExtendedKeyCodeForChar(int c) 返回一个Unicode字符的扩展键码。- 参数:
-
c
- 要处理的Unicode字符 - 返回:
-
对于具有相应
VK_
常量的Unicode字符--此VK_
常量;对于出现在已知键盘布局的主要级别上的字符--一个唯一的整数。如果一个字符不出现在已知键盘的主要级别上,则返回VK_UNDEFINED
。 - 自:
- 1.7
-
KeyEvent(Component, int, long, int, int, char)