Класс AWTKeyStroke
- Все реализуемые интерфейсы:
Serializable
- Прямые известные подклассы:
KeyStroke
public class AWTKeyStroke extends Object implements Serializable
AWTKeyStroke представляет собой действие с клавишей на клавиатуре или эквивалентном устройстве ввода. Объекты AWTKeyStroke могут соответствовать только нажатию или отпусканию определённой клавиши, как KEY_PRESSED и KEY_RELEASED KeyEvent; либо они могут соответствовать вводу определённого символа Java, как KEY_TYPED KeyEvent. Во всех случаях объекты AWTKeyStroke могут задавать модификаторы (Alt, Shift, Control, Meta, AltGraph или их сочетание), которые должны присутствовать во время действия для точного совпадения. Объекты AWTKeyStrokes неизменяемы и предназначены для обеспечения уникальности. Клиентский код не должен создавать объект AWTKeyStroke самостоятельно, а должен использовать один из вариантов getAWTKeyStroke. Использование клиентским кодом этих фабричных методов позволяет реализации AWTKeyStroke эффективно кэшировать экземпляры и совместно использовать их.
- Начиная с версии:
- 1.4
- См. также:
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создает AWTKeyStroke со значениями по умолчанию. |
|
protected |
Создает AWTKeyStroke с указанными значениями. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
final boolean |
equals |
Возвращает true, если этот объект идентичен указанному объекту. |
static AWTKeyStroke |
getAWTKeyStroke |
Возвращает общий экземпляр AWTKeyStroke, представляющий событие KEY_TYPED для указанного символа. |
static AWTKeyStroke |
getAWTKeyStroke |
Возвращает общий экземпляр AWTKeyStroke, заданный числовым кодом клавиши и набором модификаторов. |
static AWTKeyStroke |
getAWTKeyStroke |
Возвращает общий экземпляр AWTKeyStroke, заданный числовым кодом клавиши и набором модификаторов, с указанием того, активируется ли клавиша при нажатии или отпускании. |
static AWTKeyStroke |
getAWTKeyStroke |
Возвращает общий экземпляр AWTKeyStroke, представляющий событие KEY_TYPED для указанного объекта Character и набора модификаторов. |
static AWTKeyStroke |
getAWTKeyStroke |
Разбирает строку и возвращает AWTKeyStroke. |
static AWTKeyStroke |
getAWTKeyStrokeForEvent |
Возвращает AWTKeyStroke, представляющий сочетание клавиш, которое вызвало заданное событие KeyEvent. |
final char |
getKeyChar() |
Возвращает символ для этого AWTKeyStroke. |
final int |
getKeyCode() |
Возвращает числовой код клавиши для этого AWTKeyStroke. |
final int |
getKeyEventType() |
Возвращает тип KeyEvent, соответствующий этому AWTKeyStroke. |
final int |
getModifiers() |
Возвращает клавиши-модификаторы для этого AWTKeyStroke. |
int |
hashCode() |
Возвращает числовое значение для этого объекта, которое, вероятно, будет уникальным, что делает его подходящим в качестве индекса в хеш-таблице. |
final boolean |
isOnKeyRelease() |
Возвращает, представляет ли этот AWTKeyStroke отпускание клавиши. |
protected Object |
readResolve() |
Возвращает кэшированный экземпляр AWTKeyStroke (или подкласса AWTKeyStroke), равный этому экземпляру. |
protected static void |
registerSubclass |
Устарело. |
String |
toString() |
Возвращает строку, отображающую свойства этого объекта и позволяющую его идентифицировать. |
Методы, объявленные в классе Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии. Финализация устарела и подлежит удалению в одном из следующих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения определенного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения определенного промежутка реального времени. |
Подробное описание конструкторов
AWTKeyStroke
protected AWTKeyStroke()
AWTKeyStroke со значениями по умолчанию. Используются следующие значения по умолчанию: | Свойство | Значение по умолчанию |
|---|---|
| Символ клавиши |
KeyEvent.CHAR_UNDEFINED |
| Код клавиши |
KeyEvent.VK_UNDEFINED |
| Модификаторы | нет |
| При отпускании клавиши? |
false |
AWTKeyStroke не следует создавать в клиентском коде. Вместо этого используйте один из вариантов getAWTKeyStroke.- См. также:
AWTKeyStroke
protected AWTKeyStroke(char keyChar, int keyCode, int modifiers, boolean onKeyRelease)
AWTKeyStroke с указанными значениями. AWTKeyStroke не следует создавать в клиентском коде. Вместо этого используйте один из вариантов getAWTKeyStroke.- Параметры:
-
keyChar— значение символа клавиши -
keyCode— код клавиши для этогоAWTKeyStroke -
modifiers— побитовое ИЛИ любой комбинации модификаторов -
onKeyRelease—true, если этотAWTKeyStrokeсоответствует отпусканию клавиши; иначе —false - См. также:
Подробное описание методов
registerSubclass
@Deprecated protected static void registerSubclass(Class<?> subclass)
- Параметры:
-
subclass— новый Class, экземпляры которого должны создаваться фабричными методами
getAWTKeyStroke
public static AWTKeyStroke getAWTKeyStroke(char keyChar)
AWTKeyStroke, представляющий событие KEY_TYPED для указанного символа.- Параметры:
-
keyChar— значение символа клавиши - Возвращает:
- объект
AWTKeyStrokeдля этой клавиши
getAWTKeyStroke
public static AWTKeyStroke getAWTKeyStroke(Character keyChar, int modifiers)
AWTKeyStroke, представляющий событие KEY_TYPED для указанного объекта Character и набора модификаторов. Обратите внимание, что первый параметр имеет тип 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— объект Character, представляющий символ клавиши -
modifiers— побитовое ИЛИ любой комбинации модификаторов - Возвращает:
- объект
AWTKeyStrokeдля этой клавиши - Вызывает исключение:
-
IllegalArgumentException— еслиkeyCharимеет значениеnull - См. также:
getAWTKeyStroke
public static AWTKeyStroke getAWTKeyStroke(int keyCode, int modifiers, boolean onKeyRelease)
AWTKeyStroke по числовому коду клавиши и набору модификаторов, указывая, активируется ли клавиша при нажатии или отпускании. Для указания кода клавиши можно использовать константы «виртуальных клавиш», определённые в java.awt.event.KeyEvent. Например:
-
java.awt.event.KeyEvent.VK_ENTER -
java.awt.event.KeyEvent.VK_TAB -
java.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— int, задающий числовой код клавиши -
modifiers— побитовое ИЛИ любой комбинации модификаторов -
onKeyRelease—true, еслиAWTKeyStrokeдолжен представлять отпускание клавиши; иначе —false - Возвращает:
- объект AWTKeyStroke для этой клавиши
- См. также:
getAWTKeyStroke
public static AWTKeyStroke getAWTKeyStroke(int keyCode, int modifiers)
AWTKeyStroke по числовому коду клавиши и набору модификаторов. Возвращённый AWTKeyStroke будет соответствовать нажатию клавиши. Для указания кода клавиши можно использовать константы «виртуальных клавиш», определённые в java.awt.event.KeyEvent. Например:
-
java.awt.event.KeyEvent.VK_ENTER -
java.awt.event.KeyEvent.VK_TAB -
java.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- целое число, задающее числовой код клавиши -
modifiers- побитовое ИЛИ любых модификаторов - Возвращает:
- объект
AWTKeyStrokeдля этой клавиши - См. также:
getAWTKeyStrokeForEvent
public static AWTKeyStroke getAWTKeyStrokeForEvent(KeyEvent anEvent)
AWTKeyStroke, представляющий нажатие клавиши, вызвавшее заданное KeyEvent. Этот метод получает keyChar из события KeyTyped, а keyCode — из события KeyPressed или KeyReleased. Модификаторы KeyEvent получаются для всех трёх типов KeyEvent.
- Параметры:
-
anEvent-KeyEvent, из которого нужно получитьAWTKeyStroke - Возвращает:
AWTKeyStroke, вызвавшее событие- Исключения:
-
NullPointerException- еслиanEventравно null
getAWTKeyStroke
public static AWTKeyStroke getAWTKeyStroke(String s)
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_".Если не указано typed, pressed или released, предполагается pressed. Примеры:
"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.- Возвращает:
- значение char
- См. также:
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()
KeyEvent, соответствующий этому AWTKeyStroke.- Возвращает:
-
KeyEvent.KEY_PRESSED,KeyEvent.KEY_TYPEDилиKeyEvent.KEY_RELEASED - См. также:
hashCode
equals
toString
public String toString()
String, возвращаемое этим методом, можно передать в качестве параметра методу getAWTKeyStroke(String), чтобы получить нажатие клавиши, соответствующее этому нажатию клавиши.readResolve
protected Object readResolve() throws ObjectStreamException
AWTKeyStroke (или подкласса AWTKeyStroke), равный этому экземпляру.- Возвращает:
- кэшированный экземпляр, равный этому экземпляру
- Вызывает исключение:
-
ObjectStreamException— если возникает проблема сериализации
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.