Spec-Zone.ru › OpenJDK 24

Интерфейс KeyEventPostProcessor

Все известные реализующие классы:
DefaultFocusManager, DefaultKeyboardFocusManager, FocusManager, KeyboardFocusManager
Функциональный интерфейс:
Это функциональный интерфейс и, следовательно, может быть использован в качестве цели присваивания лямбда-выражения или ссылки на метод.
@FunctionalInterface public interface KeyEventPostProcessor
Обработчик событий KeyEventPostProcessor взаимодействует с текущим KeyboardFocusManager при окончательном разрешении всех необработанных событий KeyEvent. Регистрируемые с текущим KeyboardFocusManager KeyEventPostProcessor получат события KeyEvent после того, как они были переданы и обработаны их целевыми объектами. События KeyEvent, которые были бы в противном случае отброшены, потому что в приложении в настоящее время ни один компонент не владеет фокусом, также будут переданы зарегистрированным обработчикам KeyEventPostProcessor. Это позволит приложениям реализовывать функции, требующие глобальной обработки событий KeyEvent после их возникновения, такие как комбинации клавиш для вызова меню.

Обратите внимание, что сам KeyboardFocusManager реализует KeyEventPostProcessor. По умолчанию текущий KeyboardFocusManager будет последним обработчиком KeyEventPostProcessor в цепочке. Текущий KeyboardFocusManager не может быть полностью дезактивирован как KeyEventPostProcessor. Однако, если обработчик KeyEventPostProcessor сообщает, что дальнейшая обработка события KeyEvent не требуется, AWT посчитает событие полностью обработанным и не будет предпринимать никаких дополнительных действий относительно события. (Хотя клиентский код может зарегистрировать текущий KeyboardFocusManager как обработчик KeyEventPostProcessor один или несколько раз, это обычно не нужно и не рекомендуется.)

С момента:
1.4
См. также:
  • KeyboardFocusManager.addKeyEventPostProcessor(java.awt.KeyEventPostProcessor)
  • KeyboardFocusManager.removeKeyEventPostProcessor(java.awt.KeyEventPostProcessor)

Краткое описание методов

Модификатор и тип Метод Описание
boolean postProcessKeyEvent(KeyEvent e)
Этот метод вызывается текущим KeyboardFocusManager, запрашивая, чтобы этот KeyEventPostProcessor выполнил необходимую последующую обработку, которая должна быть частью окончательного разрешения события KeyEvent.

Подробное описание методов

postProcessKeyEvent

boolean postProcessKeyEvent(KeyEvent e)
Этот метод вызывается текущим KeyboardFocusManager, запрашивая, чтобы этот KeyEventPostProcessor выполнил необходимую последующую обработку, которая должна быть частью окончательного разрешения события KeyEvent. В момент вызова этого метода событие KeyEvent обычно уже передано и обработано его целевым объектом. Однако, если в приложении в настоящее время ни один компонент не владеет фокусом, то событие KeyEvent не было передано ни одному компоненту. Обычно последующая обработка событий KeyEvent используется для реализации функций, которые требуют глобальной обработки событий KeyEvent после их возникновения, таких как комбинации клавиш для вызова меню. Обратите внимание, что если KeyEventPostProcessor хочет передать событие KeyEvent, он должен использовать redispatchEvent, чтобы предотвратить AWT от рекурсивного запроса к этому KeyEventPostProcessor для повторной обработки события.

Если реализация этого метода возвращает false, то событие KeyEvent передается следующему KeyEventPostProcessor в цепочке, заканчивающейся текущим KeyboardFocusManager. Если реализация возвращает true, событие KeyEvent считается полностью обработанным (хотя это необязательно), и AWT не будет предпринимать никаких дальнейших действий относительно события KeyEvent. Если реализация потребляет событие KeyEvent, но возвращает false, потребленное событие все равно будет передано следующему KeyEventPostProcessor в цепочке. Разработчикам важно проверить, было ли событие KeyEvent потреблено, прежде чем выполнять какую-либо последующую обработку события KeyEvent. По умолчанию текущий KeyboardFocusManager не будет выполнять последующей обработки в ответ на потребленное событие KeyEvent.

Параметры:
e - событие KeyEvent для обработки
Возвращает:
true если AWT не должен предпринимать никаких дальнейших действий относительно события KeyEvent; false в противном случае
См. также:
  • KeyboardFocusManager.redispatchEvent(java.awt.Component, java.awt.AWTEvent)

© 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.desktop/java/awt/KeyEventPostProcessor.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API