Класс DefaultKeyboardFocusManager
- java.lang.Object
-
- java.awt.KeyboardFocusManager
-
- java.awt.DefaultKeyboardFocusManager
- Все реализованные интерфейсы:
-
KeyEventDispatcher,KeyEventPostProcessor
- Прямые известные подклассы:
FocusManager
public class DefaultKeyboardFocusManager extends KeyboardFocusManager
По умолчанию KeyboardFocusManager для приложений AWT. Переход фокуса выполняется в ответ на клавиши перехода фокуса компонента и с помощью политики перехода фокуса контейнера.
См. Как использовать подсистему фокуса, раздел в Руководстве по Java, и Спецификацию фокуса для получения дополнительной информации.
- С:
- 1.4
- См. также:
-
FocusTraversalPolicy,Component.setFocusTraversalKeys(int, java.util.Set<? extends java.awt.AWTKeyStroke>),Component.getFocusTraversalKeys(int)
Поля
Поля, объявленные в классе java.awt.KeyboardFocusManager
BACKWARD_TRAVERSAL_KEYS, DOWN_CYCLE_TRAVERSAL_KEYS, FORWARD_TRAVERSAL_KEYS, UP_CYCLE_TRAVERSAL_KEYS Конструкторы
| Конструктор | Описание |
|---|---|
DefaultKeyboardFocusManager() |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
protected void | dequeueKeyEvents(long after,
Component untilFocused) | Освобождает для обычной обработки текущим владельцем фокуса все события KeyEvents, которые были помещены в очередь из-за вызова |
protected void | discardKeyEvents(Component comp) | Отбрасывает все события KeyEvents, которые были помещены в очередь из-за одного или нескольких вызовов |
boolean | dispatchEvent(AWTEvent e) | Этот метод вызывается диспетчером событий AWT, запрашивая, чтобы текущий KeyboardFocusManager обработать указанное событие от его имени. |
boolean | dispatchKeyEvent(KeyEvent e) | Вызывается |
void | downFocusCycle(Container aContainer) | Перемещает фокус вниз на один цикл перехода фокуса. |
protected void | enqueueKeyEvents(long after,
Component untilFocused) | Задерживает обработку событий KeyEvents до тех пор, пока указанный компонент не станет владельцем фокуса. |
void | focusNextComponent(Component aComponent) | Фокусирует компонент после aComponent, обычно на основе FocusTraversalPolicy. |
void | focusPreviousComponent(Component aComponent) | Фокусирует компонент перед aComponent, обычно на основе FocusTraversalPolicy. |
boolean | postProcessKeyEvent(KeyEvent e) | Этот метод будет вызван |
void | processKeyEvent(Component focusedComponent,
KeyEvent e) | Этот метод инициирует операцию перехода фокуса только в том случае, если событие KeyEvent представляет собой клавишу перехода фокуса для указанного focusedComponent. |
void | upFocusCycle(Component aComponent) | Перемещает фокус вверх на один цикл перехода фокуса. |
Методы, объявленные в классе java.awt.KeyboardFocusManager
addKeyEventDispatcher, addKeyEventPostProcessor, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, addVetoableChangeListener, clearFocusOwner, clearGlobalFocusOwner, downFocusCycle, firePropertyChange, fireVetoableChange, focusNextComponent, focusPreviousComponent, getActiveWindow, getCurrentFocusCycleRoot, getCurrentKeyboardFocusManager, getDefaultFocusTraversalKeys, getDefaultFocusTraversalPolicy, getFocusedWindow, getFocusOwner, getGlobalActiveWindow, getGlobalCurrentFocusCycleRoot, getGlobalFocusedWindow, getGlobalFocusOwner, getGlobalPermanentFocusOwner, getKeyEventDispatchers, getKeyEventPostProcessors, getPermanentFocusOwner, getPropertyChangeListeners, getPropertyChangeListeners, getVetoableChangeListeners, getVetoableChangeListeners, redispatchEvent, removeKeyEventDispatcher, removeKeyEventPostProcessor, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, removeVetoableChangeListener, setCurrentKeyboardFocusManager, setDefaultFocusTraversalKeys, setDefaultFocusTraversalPolicy, setGlobalActiveWindow, setGlobalCurrentFocusCycleRoot, setGlobalFocusedWindow, setGlobalFocusOwner, setGlobalPermanentFocusOwner, upFocusCycle Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Конструкторы
DefaultKeyboardFocusManager
public DefaultKeyboardFocusManager()
Методы
dispatchEvent
public boolean dispatchEvent(AWTEvent e)
Этот метод вызывается диспетчером событий AWT с запросом о том, чтобы текущий KeyboardFocusManager осуществил обработку указанного события от его имени. DefaultKeyboardFocusManager обрабатывает все FocusEvents, все WindowEvents, связанные с фокусом, и все KeyEvents. Эти события обрабатываются на основе представлений KeyboardFocusManager о владельце фокуса и фокусированных и активных окнах, иногда переопределяя источник указанного AWTEvent. Если этот метод возвращает false, тогда диспетчер событий AWT попытается обработать событие самостоятельно.
- Определено в:
-
dispatchEventв классеKeyboardFocusManager - Параметры:
-
e- обрабатываемое AWTEvent - Возвращает:
-
trueесли этот метод обработает событие;falseв противном случае - См. также:
-
KeyboardFocusManager.redispatchEvent(java.awt.Component, java.awt.AWTEvent),KeyboardFocusManager.dispatchKeyEvent(java.awt.event.KeyEvent)
dispatchKeyEvent
public boolean dispatchKeyEvent(KeyEvent e)
Вызывается dispatchEvent если ни один другой KeyEventDispatcher в цепочке диспетчеров не обработает KeyEvent или если другие KeyEventDispatchers не зарегистрированы. Если событие не было обработано, его целевой компонент активен и владелец фокуса не равен null, этот метод отправляет событие его целевому компоненту. Этот метод также дополнительно отправляет событие всем зарегистрированным KeyEventPostProcessors. После завершения всех этих операций событие передаётся компонентам для обработки.
Во всех случаях этот метод возвращает true, так как DefaultKeyboardFocusManager разработан таким образом, что ни dispatchEvent, ни диспетчер событий AWT не должны предпринимать дальнейших действий по событию в любой ситуации.
- Определено в:
-
dispatchKeyEventв интерфейсеKeyEventDispatcher - Определено в:
-
dispatchKeyEventв классеKeyboardFocusManager - Параметры:
-
e- обрабатываемый KeyEvent - Возвращает:
true- См. также:
Component.dispatchEvent(java.awt.AWTEvent)
postProcessKeyEvent
public boolean postProcessKeyEvent(KeyEvent e)
Этот метод вызывается dispatchKeyEvent. Он обрабатывает любые необработанные KeyEvents, которые соответствуют AWT MenuShortcut, потребляя событие и активируя ярлык.
- Определено в:
-
postProcessKeyEventв интерфейсеKeyEventPostProcessor - Определено в:
-
postProcessKeyEventв классеKeyboardFocusManager - Параметры:
-
e- KeyEvent для последующей обработки - Возвращает:
true- См. также:
-
dispatchKeyEvent(java.awt.event.KeyEvent),MenuShortcut
processKeyEvent
public void processKeyEvent(Component focusedComponent,
KeyEvent e) Этот метод инициирует операцию перехода фокуса тогда и только тогда, когда KeyEvent представляет собой клавишу перехода фокуса для указанного focusedComponent. Ожидается, что focusedComponent является текущим владельцем фокуса, хотя это не обязательно. Если это не так, переход фокуса всё равно произойдёт так, как если бы focusedComponent был владельцем фокуса.
- Определено в:
-
processKeyEventв классеKeyboardFocusManager - Параметры:
-
focusedComponent- компонент, являющийся основой операции перехода фокуса, если указанное событие представляет собой клавишу перехода фокуса для этого компонента -
e- событие, которое может представлять собой клавишу перехода фокуса
enqueueKeyEvents
protected void enqueueKeyEvents(long after,
Component untilFocused) Откладывает обработку KeyEvents до тех пор, пока указанный Component не станет владельцем фокуса. KeyEvents с отметками времени, более поздними, чем указанная отметка времени, будут поставлены в очередь до тех пор, пока указанный Component не получит событие FOCUS_GAINED, или AWT отменит запрос отложенного выполнения, вызвав dequeueKeyEvents или discardKeyEvents.
- Определено в:
-
enqueueKeyEventsв классеKeyboardFocusManager - Параметры:
-
after- отметка времени текущего события или текущее системное время, если текущее событие не имеет отметки времени или AWT не может определить, какое событие обрабатывается в данный момент -
untilFocused- компонент, который получит событие FOCUS_GAINED перед любыми ожидающими KeyEvents - См. также:
-
dequeueKeyEvents(long, java.awt.Component),discardKeyEvents(java.awt.Component)
dequeueKeyEvents
protected void dequeueKeyEvents(long after,
Component untilFocused) Выпускает для нормальной обработки текущим владельцем фокуса все KeyEvents, которые были поставлены в очередь из-за вызова enqueueKeyEvents с той же отметкой времени и компонентом. Если указанная отметка времени меньше нуля, запрос отложенного выполнения для данного компонента с самой ранней отметкой времени (если таковая имеется) должен быть отменён.
- Определено в:
-
dequeueKeyEventsв классеKeyboardFocusManager - Параметры:
-
after- отметка времени, указанная в вызовеenqueueKeyEvents, или любое значение < 0 -
untilFocused- компонент, указанный в вызовеenqueueKeyEvents - См. также:
-
enqueueKeyEvents(long, java.awt.Component),discardKeyEvents(java.awt.Component)
discardKeyEvents
protected void discardKeyEvents(Component comp)
Отбрасывает все KeyEvents, которые были поставлены в очередь из-за одного или нескольких вызовов enqueueKeyEvents с указанным компонентом или одним из его потомков.
- Определено в:
-
discardKeyEventsв классеKeyboardFocusManager - Параметры:
-
comp- компонент, указанный в одном или нескольких вызовахenqueueKeyEvents, или родитель такого компонента - См. также:
-
enqueueKeyEvents(long, java.awt.Component),dequeueKeyEvents(long, java.awt.Component)
focusPreviousComponent
public void focusPreviousComponent(Component aComponent)
Фокусирует компонент перед aComponent, обычно на основе FocusTraversalPolicy.
- Определено в:
-
focusPreviousComponentв классеKeyboardFocusManager - Параметры:
-
aComponent- компонент, являющийся основой операции перехода фокуса - См. также:
-
FocusTraversalPolicy,Component.transferFocusBackward()
focusNextComponent
public void focusNextComponent(Component aComponent)
Фокусирует компонент после aComponent, обычно на основе FocusTraversalPolicy.
- Определено в:
-
focusNextComponentв классеKeyboardFocusManager - Параметры:
-
aComponent- компонент, являющийся основой операции перехода фокуса - См. также:
-
FocusTraversalPolicy,Component.transferFocus()
upFocusCycle
public void upFocusCycle(Component aComponent)
Перемещает фокус на один цикл вверх по циклу перехода фокуса. Как правило, владелец фокуса устанавливается в корень цикла перехода фокуса aComponent, а текущий корень цикла перехода фокуса устанавливается в корень цикла перехода фокуса нового владельца фокуса. Однако, если корень цикла перехода фокуса aComponent является окном, то владелец фокуса устанавливается в значение по умолчанию для фокусировки компонента корня цикла перехода фокуса, а текущий корень цикла перехода фокуса остаётся неизменным.
- Определено в:
-
upFocusCycleв классеKeyboardFocusManager - Параметры:
-
aComponent- компонент, являющийся основой операции перехода фокуса - См. также:
Component.transferFocusUpCycle()
downFocusCycle
public void downFocusCycle(Container aContainer)
Перемещает фокус на один цикл вниз по циклу перехода фокуса. Если aContainer является корнем цикла перехода фокуса, то владелец фокуса устанавливается в значение по умолчанию для фокусировки компонента aContainer, а текущий корень цикла перехода фокуса устанавливается в aContainer. Если aContainer не является корнем цикла перехода фокуса, то операция перехода фокуса не выполняется.
- Определено в:
-
downFocusCycleв классеKeyboardFocusManager - Параметры:
-
aContainer- контейнер, являющийся основой операции перехода фокуса - См. также:
Container.transferFocusDownCycle()
© 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/awt/DefaultKeyboardFocusManager.html