Spec-Zone.ru › OpenJDK 21

Интерфейс KeyEventPostProcessor

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

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

© 1993, 2023, 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/21/docs/api/java.desktop/java/awt/KeyEventPostProcessor.html

Spec-Zone.ru

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