Spec-Zone.ru › OpenJDK 27

Класс GroupLayout.ParallelGroup

java.lang.Object
javax.swing.GroupLayout.Group
javax.swing.GroupLayout.ParallelGroup
Внешний класс:
GroupLayout
public sealed class GroupLayout.ParallelGroup extends GroupLayout.Group
Group, который выравнивает и задаёт размеры дочерних элементов. ParallelGroup выравнивает дочерние элементы одним из четырёх возможных способов: по базовой линии, по центру, по ведущему краю или по замыкающему краю.

Базовая линия

ParallelGroup, выравнивающий дочерние элементы по базовой линии, должен сначала определить, где она закреплена. Базовая линия может быть закреплена у верхнего или у нижнего края группы. То есть расстояние между базовой линией и началом группы может быть постоянным либо постоянным может быть расстояние между концом группы и базовой линией. Возможные варианты соответствуют константам BaselineResizeBehavior CONSTANT_ASCENT и CONSTANT_DESCENT.

Закрепление базовой линии можно явно задать с помощью метода createBaselineGroup или определить на основе элементов. Если оно не задано явно, базовая линия будет закреплена у нижнего края, если все элементы, имеющие базовую линию и выровненные по ней, обладают поведением изменения размера базовой линии CONSTANT_DESCENT; в противном случае базовая линия закрепляется у верхнего края группы.

Элементы, выровненные по базовой линии, можно изменять в размере, если их поведение изменения размера базовой линии — CONSTANT_ASCENT или CONSTANT_DESCENT. Элементы с поведением изменения размера базовой линии OTHER или CENTER_OFFSET нельзя изменять в размере.

Базовая линия вычисляется на основе предпочтительной высоты каждого элемента, у которого она есть. Базовая линия вычисляется с помощью следующего алгоритма: max(maxNonBaselineHeight, maxAscent + maxDescent), где maxNonBaselineHeight — максимальная высота всех элементов, у которых нет базовой линии или которые не выровнены по базовой линии. maxAscent — максимальный подъём (базовая линия) всех элементов, у которых есть базовая линия и которые выровнены по ней. maxDescent — максимальный спуск (предпочтительная высота − базовая линия) всех элементов, у которых есть базовая линия и которые выровнены по ней.

ParallelGroup, выравнивающая элементы по базовой линии, полезна только для вертикальной оси. Если создать группу базовой линии и использовать её для горизонтальной оси, при запросе минимального, предпочтительного или максимального размера у GroupLayout либо при попытке расположить компоненты будет выброшено IllegalStateException.

Элементы, не выровненные по базовой линии и меньшие, чем размер ParallelGroup, располагаются одним из трёх способов: по центру, у ведущего края или у замыкающего края.

Группа ParallelGroup без выравнивания по базовой линии

ParallelGroups, созданные с выравниванием, отличным от BASELINE, располагают элементы, меньшие по размеру, чем группа, одним из трёх способов: по центру, у ведущего края или у замыкающего края.

Ведущий край зависит от оси и ComponentOrientation. Для вертикальной оси верхний край всегда является ведущим, а нижний — замыкающим. Если ComponentOrientation имеет значение LEFT_TO_RIGHT, левый край является ведущим, а правый — замыкающим. Значение RIGHT_TO_LEFT для ComponentOrientation меняет местами левый и правый края. Дочерние элементы выравниваются в соответствии с выравниванием, указанным при добавлении элемента. Если выравнивание не указано, используется выравнивание, заданное для ParallelGroup.

Чтобы выровнять элементы по базовой линии, необходимо createBaselineGroup или createParallelGroup с выравниванием BASELINE. Если группа создана без выравнивания по базовой линии и при добавлении элемента указано выравнивание по базовой линии, будет выброшено IllegalArgumentException.

Начиная с версии:
1.6
См. также:
  • GroupLayout.createParallelGroup()
  • GroupLayout.createBaselineGroup(boolean,boolean)

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

Модификатор и тип Метод Описание
GroupLayout.ParallelGroup addComponent(Component component)
Добавляет Component в эту Group.
GroupLayout.ParallelGroup addComponent(Component component, int min, int pref, int max)
Добавляет Component в эту Group с указанным размером.
GroupLayout.ParallelGroup addComponent(Component component, GroupLayout.Alignment alignment)
Добавляет Component в эту ParallelGroup с указанным выравниванием.
GroupLayout.ParallelGroup addComponent(Component component, GroupLayout.Alignment alignment, int min, int pref, int max)
Добавляет Component в эту ParallelGroup с указанными выравниванием и размером.
GroupLayout.ParallelGroup addGap(int pref)
Добавляет жёсткий промежуток в эту Group.
GroupLayout.ParallelGroup addGap(int min, int pref, int max)
Добавляет промежуток в эту Group с указанным размером.
GroupLayout.ParallelGroup addGroup(GroupLayout.Alignment alignment, GroupLayout.Group group)
Добавляет Group в эту ParallelGroup с указанным выравниванием.
GroupLayout.ParallelGroup addGroup(GroupLayout.Group group)
Добавляет Group в эту Group.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли другой объект этому объекту.
protected void finalize()
Устарело, планируется удаление: этот элемент API планируется удалить в будущей версии.
Финализация объявлена устаревшей и планируется к удалению в одном из следующих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Приостанавливает текущий поток до пробуждения, обычно посредством вызова notify или interrupt.
final void wait(long timeoutMillis)
Приостанавливает текущий поток до пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного периода реального времени.
final void wait(long timeoutMillis, int nanos)
Приостанавливает текущий поток до пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного периода реального времени.

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

addGroup

public GroupLayout.ParallelGroup addGroup(GroupLayout.Group group)
Добавляет Group в эту Group.
Переопределяет:
addGroup в классе GroupLayout.Group
Параметры:
group — Group для добавления
Возвращает:
эту Group

addComponent

public GroupLayout.ParallelGroup addComponent(Component component)
Добавляет Component в эту Group.
Переопределяет:
addComponent в классе GroupLayout.Group
Параметры:
component — Component для добавления
Возвращает:
эту Group

addComponent

public GroupLayout.ParallelGroup addComponent(Component component, int min, int pref, int max)
Добавляет Component в эту Group с указанным размером.
Переопределяет:
addComponent в классе GroupLayout.Group
Параметры:
component — Component для добавления
min — минимальный размер или одно из значений DEFAULT_SIZE или PREFERRED_SIZE
pref — предпочтительный размер или одно из значений DEFAULT_SIZE или PREFERRED_SIZE
max — максимальный размер или одно из значений DEFAULT_SIZE или PREFERRED_SIZE
Возвращает:
эту Group

addGap

public GroupLayout.ParallelGroup addGap(int pref)
Добавляет жёсткий промежуток в эту Group.
Переопределяет:
addGap в классе GroupLayout.Group
Параметры:
pref — размер промежутка
Возвращает:
эту Group

addGap

public GroupLayout.ParallelGroup addGap(int min, int pref, int max)
Добавляет промежуток в эту Group с указанным размером.
Переопределяет:
addGap в классе GroupLayout.Group
Параметры:
min — минимальный размер промежутка
pref — предпочтительный размер промежутка
max — максимальный размер промежутка
Возвращает:
эту Group

addGroup

public GroupLayout.ParallelGroup addGroup(GroupLayout.Alignment alignment, GroupLayout.Group group)
Добавляет Group в эту ParallelGroup с указанным выравниванием. Если дочерний элемент меньше Group, он выравнивается согласно указанному выравниванию.
Параметры:
alignment — выравнивание
group — Group для добавления
Возвращает:
эту ParallelGroup
Выбрасывает:
IllegalArgumentException — если alignment имеет значение null

addComponent

public GroupLayout.ParallelGroup addComponent(Component component, GroupLayout.Alignment alignment)
Добавляет Component в эту ParallelGroup с указанным выравниванием.
Параметры:
component — Component для добавления
alignment — выравнивание
Возвращает:
эту Group
Выбрасывает:
IllegalArgumentException — если alignment имеет значение null

addComponent

public GroupLayout.ParallelGroup addComponent(Component component, GroupLayout.Alignment alignment, int min, int pref, int max)
Добавляет Component в эту ParallelGroup с указанными выравниванием и размером.
Параметры:
component — Component для добавления
alignment — выравнивание
min — минимальный размер
pref — предпочтительный размер
max — максимальный размер
Возвращает:
эту Group
Выбрасывает:
IllegalArgumentException — если alignment имеет значение null

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, где приведены более подробные описания для разработчиков, включая обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

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