Класс SortingFocusTraversalPolicy
- java.lang.Object
-
- java.awt.FocusTraversalPolicy
-
- javax.swing.InternalFrameFocusTraversalPolicy
-
- javax.swing.SortingFocusTraversalPolicy
- Direct Known Subclasses:
- LayoutFocusTraversalPolicy
public class SortingFocusTraversalPolicy extends InternalFrameFocusTraversalPolicy
Политика FocusTraversalPolicy, определяющая порядок перемещения фокуса путём сортировки компонентов цикла фокуса на основе заданного компаратора. Части иерархии компонентов, которые не видны и не отображаются, не будут включены.
По умолчанию, SortingFocusTraversalPolicy неявным образом передает фокус по циклу. То есть, во время нормального перемещения фокуса, компонент, обработанный после корня цикла фокуса, станет компонентом по умолчанию для фокуса корня цикла. Это поведение можно отключить, используя метод setImplicitDownCycleTraversal.
По умолчанию, методы этого класса возвращают компонент только в том случае, если он видим, отображаем, активен и имеет возможность получения фокуса. Подклассы могут изменить это поведение, переопределив метод accept.
Данная политика учитывает поставщиков политик перемещения фокуса. При поиске первого/последнего/следующего/предыдущего компонента, если встречается поставщик политики перемещения фокуса, используется его политика перемещения фокуса для выполнения операции поиска.
- Since:
- 1.4
- See Also:
Comparator
Конструкторы
| Модификатор | Конструктор и описание |
|---|---|
protected |
SortingFocusTraversalPolicy() Создаёт SortingFocusTraversalPolicy без компаратора. |
SortingFocusTraversalPolicy(Comparator<? super Component> comparator) Создаёт SortingFocusTraversalPolicy со специфицированным компаратором. |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
protected boolean |
accept(Component aComponent) Определяет, является ли компонент приемлемым выбором в качестве нового владельца фокуса. |
protected Comparator<? super Component> |
getComparator() Возвращает компаратор, который будет использован для сортировки компонентов в цикле фокуса. |
Component |
getComponentAfter(Container aContainer,
Component aComponent) Возвращает компонент, который должен получить фокус после aComponent. |
Component |
getComponentBefore(Container aContainer,
Component aComponent) Возвращает компонент, который должен получить фокус перед aComponent. |
Component |
getDefaultComponent(Container aContainer) Возвращает компонент по умолчанию для фокуса. |
Component |
getFirstComponent(Container aContainer) Возвращает первый компонент в цикле перемещения. |
boolean |
getImplicitDownCycleTraversal() Возвращает, неявно ли эта политика SortingFocusTraversalPolicy передает фокус по циклу. |
Component |
getLastComponent(Container aContainer) Возвращает последний компонент в цикле перемещения. |
protected void |
setComparator(Comparator<? super Component> comparator) Устанавливает компаратор, который будет использован для сортировки компонентов в цикле фокуса. |
void |
setImplicitDownCycleTraversal(boolean implicitDownCycleTraversal) Устанавливает, неявно ли эта политика SortingFocusTraversalPolicy передает фокус по циклу. |
Методы, унаследованные от класса javax.swing.InternalFrameFocusTraversalPolicy
getInitialComponent Методы, унаследованные от класса java.awt.FocusTraversalPolicy
getInitialComponent Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Конструкторы
SortingFocusTraversalPolicy
protected SortingFocusTraversalPolicy()
Создаёт SortingFocusTraversalPolicy без компаратора. Подклассы должны установить компаратор, используя setComparator перед установкой этой FocusTraversalPolicy на корень цикла фокуса или KeyboardFocusManager.
SortingFocusTraversalPolicy
public SortingFocusTraversalPolicy(Comparator<? super Component> comparator)
Создаёт SortingFocusTraversalPolicy с указанным компаратором.
Методы
getComponentAfter
public Component getComponentAfter(Container aContainer,
Component aComponent) Возвращает компонент, который должен получить фокус после aComponent. aContainer должен быть корнем цикла фокуса для aComponent или поставщиком политики перемещения фокуса.
По умолчанию, SortingFocusTraversalPolicy неявно передает фокус по циклу вниз. То есть, во время обычного перемещения фокуса, компонент, пройденный после корня цикла фокуса, будет стандартным компонентом корня цикла фокуса для фокусировки. Это поведение можно отключить, используя метод setImplicitDownCycleTraversal.
Если aContainer является поставщиком политики перемещения фокуса, фокус всегда передается по циклу вниз.
- Определено в:
-
getComponentAfterв классеFocusTraversalPolicy - Параметры:
-
aContainer- корень цикла фокуса для aComponent или поставщик политики перемещения фокуса -
aComponent- дочерний элемент (возможно, косвенный) aContainer или сам aContainer - Возвращает:
- компонент, который должен получить фокус после aComponent, или null, если подходящий компонент не найден
- Исключения:
-
IllegalArgumentException- если aContainer не является корнем цикла фокуса для aComponent или поставщиком политики перемещения фокуса, или если aContainer или aComponent равны null
getComponentBefore
public Component getComponentBefore(Container aContainer,
Component aComponent) Возвращает компонент, который должен получить фокус перед aComponent. aContainer должен быть корнем цикла фокуса для aComponent или поставщиком политики перемещения фокуса.
По умолчанию, SortingFocusTraversalPolicy неявно передает фокус по циклу вниз. То есть, во время обычного перемещения фокуса, компонент, пройденный после корня цикла фокуса, будет стандартным компонентом корня цикла фокуса для фокусировки. Это поведение можно отключить, используя метод setImplicitDownCycleTraversal.
Если aContainer является поставщиком политики перемещения фокуса, фокус всегда передается по циклу вниз.
- Определено в:
-
getComponentBeforeв классеFocusTraversalPolicy - Параметры:
-
aContainer- корень цикла фокуса для aComponent или поставщик политики перемещения фокуса -
aComponent- дочерний элемент (возможно, косвенный) aContainer или сам aContainer - Возвращает:
- компонент, который должен получить фокус перед aComponent, или null, если подходящий компонент не найден
- Исключения:
-
IllegalArgumentException- если aContainer не является корнем цикла фокуса для aComponent или поставщиком политики перемещения фокуса, или если aContainer или aComponent равны null
getFirstComponent
public Component getFirstComponent(Container aContainer)
Возвращает первый компонент в цикле перемещения. Этот метод используется для определения следующего компонента для фокусировки, когда перемещение циклично в прямом направлении.
- Определено в:
-
getFirstComponentв классеFocusTraversalPolicy - Параметры:
-
aContainer- корень цикла фокуса для aComponent или поставщик политики перемещения фокуса, первый компонент которого должен быть возвращён - Возвращает:
- первый компонент в цикле перемещения aContainer, или null, если подходящий компонент не найден
- Исключения:
-
IllegalArgumentException- если aContainer равен null
getLastComponent
public Component getLastComponent(Container aContainer)
Возвращает последний компонент в цикле перемещения. Этот метод используется для определения следующего компонента для фокусировки, когда перемещение циклично в обратном направлении.
- Определено в:
-
getLastComponentв классеFocusTraversalPolicy - Параметры:
-
aContainer- корень цикла фокуса для aComponent или поставщик политики перемещения фокуса, последний компонент которого должен быть возвращен - Возвращает:
- последний компонент в цикле перемещения aContainer, или null, если подходящий компонент не найден
- Исключения:
-
IllegalArgumentException- если aContainer равен null
getDefaultComponent
public Component getDefaultComponent(Container aContainer)
Возвращает стандартный компонент для фокусировки. Этот компонент будет первым, получившим фокус, при переходе вниз в новый цикл перемещения фокуса, укоренённый в aContainer. Стандартная реализация этого метода возвращает тот же компонент, что и getFirstComponent.
- Определено в:
-
getDefaultComponentв классеFocusTraversalPolicy - Параметры:
-
aContainer- корень цикла фокуса для aComponent или поставщик политики перемещения фокуса, стандартный компонент которого должен быть возвращён - Возвращает:
- стандартный компонент в цикле перемещения aContainer, или null, если подходящий компонент не найден
- Исключения:
-
IllegalArgumentException- если aContainer равен null - См. также:
getFirstComponent(java.awt.Container)
setImplicitDownCycleTraversal
public void setImplicitDownCycleTraversal(boolean implicitDownCycleTraversal)
Устанавливает, неявно ли SortingFocusTraversalPolicy передает фокус вниз по циклу. Если true, во время обычного перемещения фокуса, компонент, пройденный после корня цикла фокуса, будет стандартным компонентом корня цикла фокуса для фокусировки. Если false, вместо этого будет пройден следующий компонент в цикле перемещения фокуса, укоренённом в указанном корне цикла фокуса. Значение по умолчанию для этого свойства равно true.
- Параметры:
-
implicitDownCycleTraversal- неявно ли SortingFocusTraversalPolicy передает фокус вниз по циклу - См. также:
-
getImplicitDownCycleTraversal(),getFirstComponent(java.awt.Container)
getImplicitDownCycleTraversal
public boolean getImplicitDownCycleTraversal()
Возвращает, неявно ли SortingFocusTraversalPolicy передает фокус вниз по циклу. Если true, во время обычного перемещения фокуса, компонент, пройденный после корня цикла фокуса, будет стандартным компонентом корня цикла фокуса для фокусировки. Если false, вместо этого будет пройден следующий компонент в цикле перемещения фокуса, укоренённом в указанном корне цикла фокуса.
- Возвращает:
- неявно ли SortingFocusTraversalPolicy передает фокус вниз по циклу
- См. также:
-
setImplicitDownCycleTraversal(boolean),getFirstComponent(java.awt.Container)
setComparator
protected void setComparator(Comparator<? super Component> comparator)
Устанавливает компаратор, который будет использоваться для сортировки компонентов в цикле перемещения фокуса.
- Параметры:
-
comparator- компаратор, который будет использоваться для сортировки
getComparator
protected Comparator<? super Component> getComparator()
Возвращает компаратор, который будет использоваться для сортировки компонентов в цикле перемещения фокуса.
- Возвращает:
- компаратор, который будет использоваться для сортировки
accept
protected boolean accept(Component aComponent)
Определяет, является ли компонент приемлемым вариантом для нового владельца фокуса. По умолчанию, этот метод будет принимать компонент, если и только если он видимый, отображаемый, активный и фокусируемый.
- Параметры:
-
aComponent- компонент, чья пригодность в качестве владельца фокуса должна быть проверена - Возвращает:
-
trueесли aComponent видимый, отображаемый, активный и фокусируемый;falseв противном случае
© 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.