java.lang.Object
java.awt.AWTKeyStroke
- 所有已实现的接口:
Serializable
- 已知子类:
KeyStroke
AWTKeyStroke 表示键盘或等效输入设备上的键操作。 AWTKeyStroke s 只能对应于特定键的按下或释放,就像 KEY_PRESSED 和 KEY_RELEASED KeyEvent s 一样;或者,它们可以对应于键入特定的 Java 字符,就像 KEY_TYPED KeyEvent 一样。在所有情况下,AWTKeyStrokes 都可以指定修饰符(alt、shift、control、meta、altGraph 或其组合),这些修饰符必须在完全匹配的操作期间出现。
AWTKeyStrokes 是不可变的,并且旨在是唯一的。客户端代码不应自行创建 AWTKeyStroke,而应使用 getAWTKeyStroke 的变体。客户端使用这些工厂方法允许 AWTKeyStroke 实现有效地缓存和共享实例。
- 自从:
- 1.4
- 参见:
-
构造方法总结
构造方法修饰符构造方法描述protected构造具有默认值的AWTKeyStroke。protectedAWTKeyStroke(char keyChar, int keyCode, int modifiers, boolean onKeyRelease) 构造具有指定值的AWTKeyStroke。 -
方法总结
修饰符和类型方法描述final boolean如果此对象与指定对象相同,则返回 true。static AWTKeyStrokegetAWTKeyStroke(char keyChar) 返回代表指定角色的KEY_TYPED事件的AWTKeyStroke的共享实例。static AWTKeyStrokegetAWTKeyStroke(int keyCode, int modifiers) 返回AWTKeyStroke的共享实例,给定数字键码和一组修饰符。static AWTKeyStrokegetAWTKeyStroke(int keyCode, int modifiers, boolean onKeyRelease) 返回AWTKeyStroke的共享实例,给定一个数字键代码和一组修饰符,指定键在按下或释放时是否被激活。static AWTKeyStrokegetAWTKeyStroke(Character keyChar, int modifiers) 返回AWTKeyStroke的共享实例,它表示指定 Character 对象的KEY_TYPED事件和一组修饰符。static AWTKeyStroke解析一个字符串并返回一个AWTKeyStroke。static AWTKeyStrokegetAWTKeyStrokeForEvent(KeyEvent anEvent) 返回一个AWTKeyStroke代表生成给定KeyEvent的笔划。final char返回此AWTKeyStroke的字符。final int返回此AWTKeyStroke的数字键代码。final int返回对应于此AWTKeyStroke的KeyEvent的类型。final int返回此AWTKeyStroke的修改键。inthashCode()返回此对象的可能唯一的数值,使其成为哈希表中索引值的不错选择。final boolean返回此AWTKeyStroke是否表示按键释放。protected Object返回等于此实例的AWTKeyStroke(或AWTKeyStroke的子类)的缓存实例。protected static voidregisterSubclass(Class<?> subclass) 已弃用。toString()返回显示和标识此对象属性的字符串。
-
构造方法详细信息
-
AWTKeyStroke
protected AWTKeyStroke()构造具有默认值的AWTKeyStroke。使用的默认值是:AWTKeyStroke 默认值 属性 默认值 关键字符 KeyEvent.CHAR_UNDEFINED关键代码 KeyEvent.VK_UNDEFINED修饰符 没有任何 关键释放? falseAWTKeyStroke不应由客户端代码构造。请改用getAWTKeyStroke的变体。- 参见:
-
AWTKeyStroke
protected AWTKeyStroke(char keyChar, int keyCode, int modifiers, boolean onKeyRelease) 构造具有指定值的AWTKeyStroke。AWTKeyStroke不应由客户端代码构造。请改用getAWTKeyStroke的变体。- 参数:
keyChar- 键盘键的字符值keyCode- 这个AWTKeyStroke的关键代码modifiers- 任何修饰符的按位或组合onKeyRelease-true如果此AWTKeyStroke对应于按键释放;false否则- 参见:
-
-
方法详情
-
registerSubclass
已弃用。该方法没有任何效果,只是为了避免引入二进制不兼容而保留下来。- 参数:
subclass- 工厂方法应为其创建实例的新类
-
getAWTKeyStroke
返回代表指定角色的KEY_TYPED事件的AWTKeyStroke的共享实例。- 参数:
keyChar- 键盘键的字符值- 返回:
-
该键的
AWTKeyStroke对象
-
getAWTKeyStroke
返回AWTKeyStroke的共享实例,它表示指定 Character 对象的KEY_TYPED事件和一组修饰符。请注意,第一个参数是 Character 类型,而不是 char。这是为了避免无意中与对getAWTKeyStroke(int keyCode, int modifiers)的调用发生冲突。修饰符由以下任意组合组成:- java.awt.event.InputEvent.SHIFT_DOWN_MASK
- java.awt.event.InputEvent.CTRL_DOWN_MASK
- java.awt.event.InputEvent.META_DOWN_MASK
- java.awt.event.InputEvent.ALT_DOWN_MASK
- java.awt.event.InputEvent.ALT_GRAPH_DOWN_MASK
- java.awt.event.InputEvent.SHIFT_MASK
- java.awt.event.InputEvent.CTRL_MASK
- java.awt.event.InputEvent.META_MASK
- java.awt.event.InputEvent.ALT_MASK
- java.awt.event.InputEvent.ALT_GRAPH_MASK
- 参数:
keyChar- 键盘字符的字符对象modifiers- 任何修饰符的按位或组合- 返回:
-
该键的
AWTKeyStroke对象 - 抛出:
IllegalArgumentException- 如果keyChar是null- 参见:
-
getAWTKeyStroke
返回AWTKeyStroke的共享实例,给定一个数字键代码和一组修饰符,指定键在按下或释放时是否被激活。java.awt.event.KeyEvent中定义的“虚拟键”常量可用于指定键码。例如:java.awt.event.KeyEvent.VK_ENTERjava.awt.event.KeyEvent.VK_TABjava.awt.event.KeyEvent.VK_SPACE
java.awt.event.KeyEvent.getExtendedKeyCodeForChar获取密钥代码。修饰符由以下任意组合组成:- java.awt.event.InputEvent.SHIFT_DOWN_MASK
- java.awt.event.InputEvent.CTRL_DOWN_MASK
- java.awt.event.InputEvent.META_DOWN_MASK
- java.awt.event.InputEvent.ALT_DOWN_MASK
- java.awt.event.InputEvent.ALT_GRAPH_DOWN_MASK
- java.awt.event.InputEvent.SHIFT_MASK
- java.awt.event.InputEvent.CTRL_MASK
- java.awt.event.InputEvent.META_MASK
- java.awt.event.InputEvent.ALT_MASK
- java.awt.event.InputEvent.ALT_GRAPH_MASK
- 参数:
keyCode- 指定键盘键的数字代码的 intmodifiers- 任何修饰符的按位或组合onKeyRelease-true如果AWTKeyStroke应该表示按键释放;false否则- 返回:
- 该键的 AWTKeyStroke 对象
- 参见:
-
getAWTKeyStroke
返回AWTKeyStroke的共享实例,给定数字键码和一组修饰符。返回的AWTKeyStroke将对应于一次按键。java.awt.event.KeyEvent中定义的“虚拟键”常量可用于指定键码。例如:java.awt.event.KeyEvent.VK_ENTERjava.awt.event.KeyEvent.VK_TABjava.awt.event.KeyEvent.VK_SPACE
- java.awt.event.InputEvent.SHIFT_DOWN_MASK
- java.awt.event.InputEvent.CTRL_DOWN_MASK
- java.awt.event.InputEvent.META_DOWN_MASK
- java.awt.event.InputEvent.ALT_DOWN_MASK
- java.awt.event.InputEvent.ALT_GRAPH_DOWN_MASK
- java.awt.event.InputEvent.SHIFT_MASK
- java.awt.event.InputEvent.CTRL_MASK
- java.awt.event.InputEvent.META_MASK
- java.awt.event.InputEvent.ALT_MASK
- java.awt.event.InputEvent.ALT_GRAPH_MASK
- 参数:
keyCode- 指定键盘键的数字代码的 intmodifiers- 任何修饰符的按位或组合- 返回:
-
该键的
AWTKeyStroke对象 - 参见:
-
getAWTKeyStrokeForEvent
返回一个AWTKeyStroke代表生成给定KeyEvent的笔划。此方法从
KeyTyped事件获取 keyChar,并从KeyPressed或KeyReleased事件获取 keyCode。为所有三种类型的KeyEvent获得了KeyEvent修饰符。- 参数:
anEvent- 从中获取AWTKeyStroke的KeyEvent- 返回:
-
引发事件的
AWTKeyStroke - 抛出:
NullPointerException- 如果anEvent为空
-
getAWTKeyStroke
解析一个字符串并返回一个AWTKeyStroke。该字符串必须具有以下语法:<modifiers>* (<typedID> | <pressedReleasedID>) modifiers := shift | control | ctrl | meta | alt | altGraph typedID := typed <typedKey> typedKey := string of length 1 giving Unicode character. pressedReleasedID := (pressed | released) key key := KeyEvent key code name, i.e. the name following "VK_".
如果未指定键入、按下或释放,则假定为按下。以下是一些示例:"INSERT" => getAWTKeyStroke(KeyEvent.VK_INSERT, 0); "control DELETE" => getAWTKeyStroke(KeyEvent.VK_DELETE, InputEvent.CTRL_MASK); "alt shift X" => getAWTKeyStroke(KeyEvent.VK_X, InputEvent.ALT_MASK | InputEvent.SHIFT_MASK); "alt shift released X" => getAWTKeyStroke(KeyEvent.VK_X, InputEvent.ALT_MASK | InputEvent.SHIFT_MASK, true); "typed a" => getAWTKeyStroke('a');- 参数:
s- 如上所述格式化的字符串- 返回:
-
该字符串的
AWTKeyStroke对象 - 抛出:
IllegalArgumentException- 如果s是null,或者格式不正确
-
getKeyChar
public final char getKeyChar()返回此AWTKeyStroke的字符。- 返回:
- 一个字符值
- 参见:
-
getKeyCode
public final int getKeyCode()返回此AWTKeyStroke的数字键代码。- 返回:
- 包含键码值的 int
- 参见:
-
getModifiers
public final int getModifiers()返回此AWTKeyStroke的修改键。- 返回:
- 包含修饰符的 int
- 参见:
-
isOnKeyRelease
public final boolean isOnKeyRelease()返回此AWTKeyStroke是否表示按键释放。- 返回:
true如果此AWTKeyStroke代表按键释放;false否则- 参见:
-
getKeyEventType
public final int getKeyEventType()返回对应于此AWTKeyStroke的KeyEvent的类型。- 返回:
KeyEvent.KEY_PRESSED、KeyEvent.KEY_TYPED或KeyEvent.KEY_RELEASED- 参见:
-
hashCode
public int hashCode()返回此对象的可能唯一的数值,使其成为哈希表中索引值的不错选择。 -
equals
如果此对象与指定对象相同,则返回 true。 -
toString
返回显示和标识此对象属性的字符串。此方法返回的String可以作为参数传递给getAWTKeyStroke(String)以产生等于此击键的击键。 -
readResolve
返回等于此实例的AWTKeyStroke(或AWTKeyStroke的子类)的缓存实例。- 返回:
- 等于此实例的缓存实例
- 抛出:
ObjectStreamException- 如果出现序列化问题
-