Класс DefaultKeyboardFocusManager
- java.lang.Object
-
- java.awt.KeyboardFocusManager
-
- java.awt.DefaultKeyboardFocusManager
- Все реализованные интерфейсы:
- KeyEventDispatcher, KeyEventPostProcessor
- Прямые известные подклассы:
- FocusManager
public class DefaultKeyboardFocusManager extends KeyboardFocusManager
По умолчанию KeyboardFocusManager для приложений AWT. Переход фокуса выполняется в ответ на клавиши перехода фокуса компонента и с помощью FocusTraversalPolicy контейнера.
Дополнительную информацию можно найти в разделе «Использование подсистемы фокусировки» в учебном пособии Java и в спецификации Focus Specification.
- С момента:
- 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 от своего имени обработав указанное событие. DefaultKeyboardFocusManagers обрабатывают все 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.