Spec-Zone.ru › OpenJDK 17

Перечисление Component.BaselineResizeBehavior

java.lang.Object
java.lang.Enum<Component.BaselineResizeBehavior>
java.awt.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
См. также:
  • Component.getBaselineResizeBehavior()
  • Component.getBaseline(int,int)

Краткое описание вложенных классов

Вложенные классы/интерфейсы, объявленные в классе java.lang.Enum

Enum.EnumDesc<E extends Enum<E>>

Краткое описание констант

Константа перечисления Описание
CENTER_OFFSET
Указывает, что базовая линия остается на фиксированном расстоянии от центра компонента.
CONSTANT_ASCENT
Указывает, что базовая линия остается фиксированной относительно начала координат по оси y.
CONSTANT_DESCENT
Указывает, что базовая линия остается фиксированной относительно высоты и не изменяется при изменении ширины.
OTHER
Указывает, что поведение изменения базовой линии не может быть выражено с помощью других констант.

Краткое описание методов

Модификатор и тип Метод Описание
static Component.BaselineResizeBehavior valueOf(String name)
Возвращает константу перечисления этого класса с указанным именем.
static Component.BaselineResizeBehavior[] values()
Возвращает массив, содержащий константы этого класса перечисления в порядке их объявления.

Методы, объявленные в классе java.lang.Enum

clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf

Методы, объявленные в классе java.lang.Object

getClass, notify, notifyAll, wait, wait, wait

Подробное описание констант

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 остается одинаковой (плюс-минус единица в зависимости от погрешности округления).

Из-за возможных ошибок округления рекомендуется запрашивать базовую линию с двумя последовательными высотами и использовать возвращаемое значение для определения, необходимо ли дополнять вычисления на 1. Следующее показывает, как рассчитать базовую линию для любой высоты:

   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, 2021, 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/17/docs/api/java.desktop/java/awt/Component.BaselineResizeBehavior.html

Spec-Zone.ru

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