Spec-Zone.ru › OpenJDK 8

Класс 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, которые были помещены в очередь из-за вызова enqueueKeyEvents с тем же временем и компонентом.

protected void discardKeyEvents(Component comp)

Отбрасывает все события KeyEvents, которые были помещены в очередь из-за одного или нескольких вызовов enqueueKeyEvents со специфицированным компонентом или одним из его потомков.

boolean dispatchEvent(AWTEvent e)

Этот метод вызывается диспетчером событий AWT, запрашивая, чтобы текущий KeyboardFocusManager обработал указанное событие от его имени.

boolean dispatchKeyEvent(KeyEvent e)

Вызывается dispatchEvent, если ни один другой KeyEventDispatcher в цепочке диспетчеров не обработало KeyEvent, или если другие KeyEventDispatchers не зарегистрированы.

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)

Этот метод будет вызван dispatchKeyEvent.

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.

Spec-Zone.ru

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