Spec-Zone.ru › OpenJDK 8

Интерфейс KeyEventPostProcessor

Все известные реализующие классы:
DefaultFocusManager, DefaultKeyboardFocusManager, FocusManager, KeyboardFocusManager
Функциональный интерфейс:
Это функциональный интерфейс и поэтому может быть использован в качестве целевого назначения для лямбда-выражения или ссылки на метод.

@FunctionalInterface
public interface KeyEventPostProcessor

Класс KeyEventPostProcessor взаимодействует с текущим KeyboardFocusManager при окончательном решении всех необработанных событий KeyEvents. Регистрированные в текущем KeyboardFocusManager обработчики KeyEventPostProcessors получат KeyEvents после того, как KeyEvents были переданы и обработаны их целевыми объектами. KeyEvents, которые в противном случае были бы отброшены, потому что ни один компонент в приложении в данный момент не имеет фокуса, также будут переданы зарегистрированным обработчикам KeyEventPostProcessors. Это позволит приложениям реализовать функции, требующие глобальной обработки событий KeyEvents после их передачи, такие как сочетания клавиш для меню.

Обратите внимание, что сам 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, 2020, 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.

Spec-Zone.ru

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