Перечисление Component.BaselineResizeBehavior
- Все реализуемые интерфейсы:
Serializable, Comparable<Component.BaselineResizeBehavior>, Constable
- Внешний класс:
Component
public static enum Component.BaselineResizeBehavior extends Enum<Component.BaselineResizeBehavior>
Перечисление распространённых способов изменения базовой линии компонента при изменении его размера. Поведение базовой линии при изменении размера предназначено главным образом для менеджеров компоновки, которым необходимо знать, как меняется положение базовой линии при изменении размера компонента. В общем случае поведение базовой линии при изменении размера будет верным для размеров, не меньших минимального размера (фактического минимального размера, а не заданного разработчиком). Для размеров меньше минимального базовая линия может изменяться иначе, чем указывает поведение базовой линии при изменении размера. Аналогично, при приближении размера к
Integer.MAX_VALUE и/или Short.MAX_VALUE базовая линия может изменяться иначе, чем указывает поведение базовой линии при изменении размера.- Начиная с:
- 1.6
- См. также:
Краткое описание вложенных классов
Вложенные классы и интерфейсы, объявленные в классе Enum
Enum.EnumDesc<E> | Модификатор и тип | Класс | Описание |
|---|---|---|
static final class |
Enum.EnumDesc<E extends Enum<E>> |
Номинальный дескриптор для константы enum. |
Краткое описание констант перечисления
| Константа перечисления | Описание |
|---|---|
CENTER_OFFSET |
Указывает, что базовая линия остаётся на фиксированном расстоянии от центра компонента. |
CONSTANT_ASCENT |
Указывает, что базовая линия остаётся фиксированной относительно начала координат y. |
CONSTANT_DESCENT |
Указывает, что базовая линия остаётся фиксированной относительно высоты и не изменяется при изменении ширины. |
OTHER |
Указывает, что поведение базовой линии при изменении размера не может быть выражено с помощью других констант. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static Component.BaselineResizeBehavior |
valueOf |
Возвращает константу перечисления этого класса с указанным именем. |
static Component.BaselineResizeBehavior[] |
values() |
Возвращает массив, содержащий константы этого класса-перечисления в порядке их объявления. |
Методы, объявленные в классе Enum
clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf | Модификатор и тип | Метод | Описание |
|---|---|---|
protected final Object |
clone() |
Выбрасывает CloneNotSupportedException. |
final int |
compareTo |
Сравнивает это перечисление с указанным объектом, определяя порядок. |
final Optional |
describeConstable() |
Возвращает дескриптор перечисления EnumDesc для этого экземпляра, если его можно создать, либо пустой Optional, если создать его нельзя. |
final boolean |
equals |
Возвращает true, если указанный объект равен этой константе перечисления. |
protected final void |
finalize() |
Устарело, для удаления: этот элемент API подлежит удалению в будущей версии. Метод завершения работы устарел и подлежит удалению. |
final Class |
getDeclaringClass() |
Возвращает объект Class, соответствующий типу перечисления этой константы перечисления. |
final int |
hashCode() |
Возвращает хеш-код этой константы перечисления. |
final String |
name() |
Возвращает имя этой константы перечисления точно в том виде, в каком оно указано в объявлении перечисления. |
final int |
ordinal() |
Возвращает порядковый номер этой константы перечисления (её позицию в объявлении перечисления, где первой константе присваивается порядковый номер 0). |
String |
toString() |
Возвращает имя этой константы перечисления, указанное в объявлении. |
static <T extends Enum<T>> |
valueOf |
Возвращает константу указанного класса перечисления с указанным именем. |
Методы, объявленные в классе Object
getClass, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ждать пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ждать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения определённого промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ждать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения определённого промежутка реального времени. |
Подробное описание констант перечисления
CONSTANT_ASCENT
public static final Component.BaselineResizeBehavior CONSTANT_ASCENT
Указывает, что базовая линия остаётся фиксированной относительно начала координат y. То есть
getBaseline возвращает одно и то же значение независимо от высоты или ширины. Например, JLabel с непустым текстом и вертикальным выравниванием TOP должно иметь тип базовой линии CONSTANT_ASCENT.CONSTANT_DESCENT
public static final Component.BaselineResizeBehavior CONSTANT_DESCENT
Указывает, что базовая линия остаётся фиксированной относительно высоты и не изменяется при изменении ширины. То есть для любой высоты H разность между H и
getBaseline(w, H) одинакова. Например, JLabel с непустым текстом и вертикальным выравниванием BOTTOM должно иметь тип базовой линии CONSTANT_DESCENT.CENTER_OFFSET
public static final Component.BaselineResizeBehavior CENTER_OFFSET
Указывает, что базовая линия остаётся на фиксированном расстоянии от центра компонента. То есть для любой высоты H разность между
getBaseline(w, H) и H / 2 одинакова (с точностью до единицы в ту или другую сторону из-за ошибки округления). Из-за возможных ошибок округления рекомендуется запрашивать базовую линию для двух последовательных значений высоты и использовать возвращаемое значение, чтобы определить, нужно ли добавлять единицу к вычислениям. Ниже показано, как вычислить базовую линию для любой высоты:
Dimension preferredSize = component.getPreferredSize();
int baseline = getBaseline(preferredSize.width,
preferredSize.height);
int nextBaseline = getBaseline(preferredSize.width,
preferredSize.height + 1);
// Amount to add to height when calculating where baseline
// lands for a particular height:
int padding = 0;
// Where the baseline is relative to the mid point
int baselineOffset = baseline - height / 2;
if (preferredSize.height % 2 == 0 &&
baseline != nextBaseline) {
padding = 1;
}
else if (preferredSize.height % 2 == 1 &&
baseline == nextBaseline) {
baselineOffset--;
padding = 1;
}
// The following calculates where the baseline lands for
// the height z:
int calculatedBaseline = (z + padding) / 2 + baselineOffset;
OTHER
public static final Component.BaselineResizeBehavior OTHER
Указывает, что поведение базовой линии при изменении размера не может быть выражено с помощью других констант. Это также может означать, что базовая линия меняется в зависимости от ширины компонента. Это значение также возвращается компонентами, у которых нет базовой линии.
Подробное описание методов
values
public static Component.BaselineResizeBehavior[] values()
Возвращает массив, содержащий константы этого класса-перечисления в порядке их объявления.
- Возвращает:
- массив, содержащий константы этого класса-перечисления в порядке их объявления
valueOf
public static Component.BaselineResizeBehavior valueOf(String name)
Возвращает константу перечисления этого класса с указанным именем. Строка должна точно совпадать с идентификатором, использованным для объявления константы перечисления в этом классе. (Пробелы в начале и конце строки не допускаются.)
- Параметры:
-
name— имя возвращаемой константы перечисления. - Возвращает:
- константу перечисления с указанным именем
- Выбрасывает:
-
IllegalArgumentException— если в этом классе-перечислении нет константы с указанным именем -
NullPointerException— если аргумент равен null
© 1993, 2025, 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.