Интерфейс KeyEventPostProcessor
- Все известные реализующие классы:
-
DefaultFocusManager,DefaultKeyboardFocusManager,FocusManager,KeyboardFocusManager
- Функциональный интерфейс:
- Это функциональный интерфейс, и поэтому может быть использован в качестве назначения для лямбда-выражения или ссылки на метод.
@FunctionalInterface public interface KeyEventPostProcessor
Обратите внимание, что сам KeyboardFocusManager реализует KeyEventPostProcessor. По умолчанию, текущий KeyboardFocusManager будет последним KeyEventPostProcessor в цепочке. Текущий KeyboardFocusManager не может быть полностью дезактивирован как KeyEventPostProcessor. Однако, если KeyEventPostProcessor сообщает, что дальнейшая обработка KeyEvent не должна выполняться, AWT будет считать событие полностью обработанным и не будет предпринимать никаких дополнительных действий относительно события. (Хотя есть возможность, чтобы клиентский код зарегистрировал текущий KeyboardFocusManager как KeyEventPostProcessor один или несколько раз, это обычно не требуется и не рекомендуется.)
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
postProcessKeyEvent |
Этот метод вызывается текущим KeyboardFocusManager, запрашивая, чтобы этот KeyEventPostProcessor выполнил любую необходимую пост-обработку, которая должна быть частью окончательного разрешения KeyEvent. |
Подробное описание методов
postProcessKeyEvent
boolean postProcessKeyEvent(KeyEvent e)
redispatchEvent для предотвращения рекурсивного запроса AWT, чтобы этот KeyEventPostProcessor выполнил повторную пост-обработку события. Если реализация этого метода возвращает false, то KeyEvent передаётся следующему KeyEventPostProcessor в цепочке, заканчиваясь текущим KeyboardFocusManager. Если реализация возвращает true, KeyEvent считается полностью обработанным (хотя это необязательно), и AWT не будет предпринимать никаких дальнейших действий относительно KeyEvent. Если реализация потребляет KeyEvent, но возвращает false, то потреблённое событие всё равно будет передано следующему KeyEventPostProcessor в цепочке. Разработчикам важно проверить, был ли KeyEvent потреблён, прежде чем выполнять какую-либо пост-обработку KeyEvent. По умолчанию, текущий KeyboardFocusManager не будет выполнять никакой пост-обработки в ответ на потреблённый KeyEvent.
- Параметры:
-
e- обрабатываемый KeyEvent - Возвращает:
-
trueесли AWT не должен предпринимать никаких дальнейших действий относительно KeyEvent;falseв противном случае - См. также:
© 1993, 2021, 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.
https://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/java/awt/KeyEventPostProcessor.html