Класс GridBagLayout
- java.lang.Object
-
- java.awt.GridBagLayout
- Все реализованные интерфейсы:
-
LayoutManager,LayoutManager2,Serializable
public class GridBagLayout extends Object implements LayoutManager2, Serializable
Класс GridBagLayout — это гибкий менеджер компоновки, который выравнивает компоненты вертикально, горизонтально или по базовой линии без необходимости, чтобы компоненты были одинакового размера. Каждый объект GridBagLayout поддерживает динамическую прямоугольную сетку ячеек, причем каждый компонент занимает одну или несколько ячеек, называемую его областью отображения.
Каждый компонент, управляемый объектом GridBagLayout, связан с экземпляром GridBagConstraints. Объект ограничений определяет, где должна располагаться область отображения компонента в сетке и как компонент должен быть расположен внутри своей области отображения. Помимо своего объекта ограничений, GridBagLayout также учитывает минимальные и предпочтительные размеры каждого компонента для определения размера компонента.
Общее направление сетки зависит от свойства контейнера ComponentOrientation. Для горизонтальной ориентации слева направо координата сетки (0,0) находится в верхнем левом углу контейнера, при этом x увеличивается вправо, а y — вниз. Для горизонтальной ориентации справа налево координата сетки (0,0) находится в верхнем правом углу контейнера, при этом x увеличивается влево, а y — вниз.
Для эффективного использования компоновки сетки необходимо настроить один или несколько объектов GridBagConstraints, которые связаны с ее компонентами. Вы настраиваете объект GridBagConstraints путем установки одной или нескольких переменных экземпляра:
-
GridBagConstraints.gridx,GridBagConstraints.gridy - Указывает ячейку, содержащую ведущий угол области отображения компонента, где ячейка в начале сетки имеет адрес
gridx = 0,gridy = 0. Для горизонтальной компоновки слева направо ведущий угол компонента — его верхний левый угол. Для горизонтальной компоновки справа налево ведущий угол компонента — его верхний правый угол. ИспользуйтеGridBagConstraints.RELATIVE(значение по умолчанию), чтобы указать, что компонент должен быть размещен непосредственно после (по оси x дляgridxили оси y дляgridy) компонента, который был добавлен в контейнер перед добавлением этого компонента. -
GridBagConstraints.gridwidth,GridBagConstraints.gridheight - Указывает количество ячеек в строке (для
gridwidth) или столбце (дляgridheight) в области отображения компонента. Значение по умолчанию равно 1. ИспользуйтеGridBagConstraints.REMAINDER, чтобы указать, что область отображения компонента будет отgridxдо последней ячейки в строке (дляgridwidth) или отgridyдо последней ячейки в столбце (дляgridheight). ИспользуйтеGridBagConstraints.RELATIVE, чтобы указать, что область отображения компонента будет отgridxдо предпоследней ячейки в строке (дляgridwidth) или отgridyдо предпоследней ячейки в столбце (дляgridheight). -
GridBagConstraints.fill - Используется, когда область отображения компонента больше, чем запрошенный размер компонента, для определения того, следует ли и как изменять размер компонента. Возможные значения:
GridBagConstraints.NONE(значение по умолчанию),GridBagConstraints.HORIZONTAL(сделать компонент достаточно широким, чтобы заполнить его область отображения по горизонтали, но не изменять его высоту),GridBagConstraints.VERTICAL(сделать компонент достаточно высоким, чтобы заполнить его область отображения по вертикали, но не изменять его ширину) иGridBagConstraints.BOTH(заполнить компонент всю область отображения полностью). -
GridBagConstraints.ipadx,GridBagConstraints.ipady - Указывает внутренний отступ компонента в компоновке, сколько добавить к минимальному размеру компонента. Ширина компонента будет не менее его минимальной ширины плюс
ipadxпикселей. Аналогично, высота компонента будет не менее минимальной высоты плюсipadyпикселей. -
GridBagConstraints.insets - Указывает внешний отступ компонента, минимальное количество места между компонентом и краями его области отображения.
-
GridBagConstraints.anchor - Указывает, где компонент должен быть расположен в своей области отображения. Существует три типа возможных значений: абсолютные, относительные к ориентации и относительные к базовой линии. Значения, относительные к ориентации, интерпретируются относительно свойства
ComponentOrientationконтейнера, а абсолютные — нет. Значения, относительные к базовой линии, вычисляются относительно базовой линии. Допустимые значения:Абсолютные значения
Значения, относительные к ориентации
Значения, относительные к базовой линии
GridBagConstraints.NORTHGridBagConstraints.SOUTHGridBagConstraints.WESTGridBagConstraints.EASTGridBagConstraints.NORTHWESTGridBagConstraints.NORTHEASTGridBagConstraints.SOUTHWESTGridBagConstraints.SOUTHEAST-
GridBagConstraints.CENTER(значение по умолчанию)
GridBagConstraints.PAGE_STARTGridBagConstraints.PAGE_ENDGridBagConstraints.LINE_STARTGridBagConstraints.LINE_ENDGridBagConstraints.FIRST_LINE_STARTGridBagConstraints.FIRST_LINE_ENDGridBagConstraints.LAST_LINE_STARTGridBagConstraints.LAST_LINE_END
GridBagConstraints.BASELINEGridBagConstraints.BASELINE_LEADINGGridBagConstraints.BASELINE_TRAILINGGridBagConstraints.ABOVE_BASELINEGridBagConstraints.ABOVE_BASELINE_LEADINGGridBagConstraints.ABOVE_BASELINE_TRAILINGGridBagConstraints.BELOW_BASELINEGridBagConstraints.BELOW_BASELINE_LEADINGGridBagConstraints.BELOW_BASELINE_TRAILING
-
GridBagConstraints.weightx,GridBagConstraints.weighty - Используется для определения способа распределения пространства, что важно для указания поведения при изменении размера. Если не указать вес хотя бы для одного компонента в строке (
weightx) и столбце (weighty), все компоненты сгруппируются в центре своего контейнера. Это происходит потому, что когда вес равен нулю (значение по умолчанию), объектGridBagLayoutпомещает любое дополнительное пространство между своей сеткой ячеек и краями контейнера.
В каждой строке может быть базовая линия; она определяется компонентами в этой строке, имеющими допустимую базовую линию и выровненными по базовой линии (значение анкерного компонента — одно из
BASELINE, BASELINE_LEADING или BASELINE_TRAILING). Если ни один из компонентов в строке не имеет допустимой базовой линии, у строки нет базовой линии.
Если компонент охватывает несколько строк, он выравнивается либо по базовой линии начальной строки (если поведение изменения размера базовой линии —
CONSTANT_ASCENT ), либо конечной строки (если поведение изменения размера базовой линии — CONSTANT_DESCENT ). Строка, к которой выровнен компонент, называется доминирующей строкой.
На рисунке ниже показана компоновка по базовой линии, а также компонент, охватывающий несколько строк:
| |
- Панель, начинающаяся в строке 0 и заканчивающаяся в строке 1. Панель имеет поведение изменения размера базовой линии
CONSTANT_DESCENTи анкерBASELINE. Поскольку поведение изменения размера базовой линии —CONSTANT_DESCENT, доминирующей строкой для панели является строка 1. - Две кнопки, каждая с поведением изменения размера базовой линии
CENTER_OFFSETи анкеромBASELINE.
Компоненты, размещенные с помощью одного из значений, относящихся к базовой линии, меняют размер иначе, чем при использовании абсолютного или относительного к ориентации значения. Как компоненты меняют размер, определяется тем, как изменяется базовая линия доминирующей строки. Базовая линия привязана к нижней части области отображения, если какие-либо компоненты с той же доминирующей строкой имеют поведение изменения размера базовой линии CONSTANT_DESCENT, в противном случае базовая линия привязана к верхней части области отображения. Следующие правила определяют поведение изменения размера:
- Изменяемые компоненты, расположенные над базовой линией, могут расти только до уровня базовой линии. Например, если базовая линия находится на уровне 100 и привязана кверху, изменяемый компонент, расположенный над базовой линией, никогда не может вырасти более чем на 100 единиц.
- Аналогично, изменяемые компоненты, расположенные под базовой линией, могут расти только до разницы между высотой области отображения и базовой линией.
- Изменяемые компоненты, расположенные на базовой линии с поведением изменения размера базовой линии
OTHER, изменяются в размере только в том случае, если базовая линия при измененном размере помещается в области отображения. Если базовая линия такова, что она не помещается в области отображения, компонент не изменяется в размере. - Компоненты, расположенные на базовой линии, которые не имеют поведения изменения размера базовой линии
OTHER, могут расти только доdisplay height - baseline + baseline of component.
На следующих рисунках показано десять компонентов (все кнопки), управляемых компоновкой сетки. Рисунок 2 показывает компоновку для горизонтального контейнера слева направо, а рисунок 3 — для горизонтального контейнера справа налево.
| | |
| Рисунок 2: Горизонтальная, слева направо | Рисунок 3: Горизонтальная, справа налево |
У каждого из десяти компонентов поле fill связанного с ним объекта GridBagConstraints установлено в значение GridBagConstraints.BOTH. Кроме того, компоненты имеют следующие отличные от значений по умолчанию ограничения:
- Кнопка1, Кнопка2, Кнопка3:
weightx = 1.0 - Кнопка4:
weightx = 1.0,gridwidth = GridBagConstraints.REMAINDER - Кнопка5:
gridwidth = GridBagConstraints.REMAINDER - Кнопка6:
gridwidth = GridBagConstraints.RELATIVE - Кнопка7:
gridwidth = GridBagConstraints.REMAINDER - Кнопка8:
gridheight = 2,weighty = 1.0 - Кнопка9, Кнопка 10:
gridwidth = GridBagConstraints.REMAINDER
Вот код, реализующий пример, показанный выше:
import java.awt.*;
import java.util.*;
import java.applet.Applet;
public class GridBagEx1 extends Applet {
protected void makebutton(String name,
GridBagLayout gridbag,
GridBagConstraints c) {
Button button = new Button(name);
gridbag.setConstraints(button, c);
add(button);
}
public void init() {
GridBagLayout gridbag = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
setFont(new Font("SansSerif", Font.PLAIN, 14));
setLayout(gridbag);
c.fill = GridBagConstraints.BOTH;
c.weightx = 1.0;
makebutton("Button1", gridbag, c);
makebutton("Button2", gridbag, c);
makebutton("Button3", gridbag, c);
c.gridwidth = GridBagConstraints.REMAINDER; //end row
makebutton("Button4", gridbag, c);
c.weightx = 0.0; //reset to the default
makebutton("Button5", gridbag, c); //another row
c.gridwidth = GridBagConstraints.RELATIVE; //next-to-last in row
makebutton("Button6", gridbag, c);
c.gridwidth = GridBagConstraints.REMAINDER; //end row
makebutton("Button7", gridbag, c);
c.gridwidth = 1; //reset to the default
c.gridheight = 2;
c.weighty = 1.0;
makebutton("Button8", gridbag, c);
c.weighty = 0.0; //reset to the default
c.gridwidth = GridBagConstraints.REMAINDER; //end row
c.gridheight = 1; //reset to the default
makebutton("Button9", gridbag, c);
makebutton("Button10", gridbag, c);
setSize(300, 100);
}
public static void main(String args[]) {
Frame f = new Frame("GridBag Layout Example");
GridBagEx1 ex1 = new GridBagEx1();
ex1.init();
f.add("Center", ex1);
f.pack();
f.setSize(f.getPreferredSize());
f.show();
}
}
- Since:
- 1.0
- See Also:
-
GridBagConstraints,GridBagLayoutInfo,ComponentOrientation, Сериализованная форма
Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
double[] | columnWeights | Это поле содержит переопределения весов столбцов. |
int[] | columnWidths | Это поле содержит переопределения минимальной ширины столбцов. |
protected Hashtable<Component,GridBagConstraints> | comptable | Эта хэш-таблица поддерживает связь между компонентом и его ограничениями GridBag. |
protected GridBagConstraints | defaultConstraints | Это поле содержит экземпляр ограничений GridBag, содержащий значения по умолчанию. Если у компонента нет ограничений GridBag, то компоненту будет назначена копия |
protected GridBagLayoutInfo | layoutInfo | Это поле содержит информацию о макете для GridBag. |
protected static int | MAXGRIDSIZE | Это поле больше не используется для резервирования массивов и сохраняется для обратной совместимости. |
protected static int | MINSIZE | Наименьшая сетка, которую можно разместить с помощью макета GridBag. |
protected static int | PREFERREDSIZE | Предпочтительный размер сетки, который можно разместить с помощью макета GridBag. |
int[] | rowHeights | Это поле содержит переопределения минимальных высот строк. |
double[] | rowWeights | Это поле содержит переопределения весов строк. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
GridBagLayout() | Создает менеджер макета GridBag. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void | addLayoutComponent(Component comp,
Object constraints) | Добавляет указанный компонент в макет, используя указанный объект |
void | addLayoutComponent(String name,
Component comp) | Не имеет эффекта, так как этот менеджер макета не использует строку для каждого компонента. |
protected void | adjustForGravity(GridBagConstraints constraints,
Rectangle r) | Корректирует поля x, y, width и height до правильных значений в зависимости от геометрии ограничений и отступов. |
protected void | AdjustForGravity(GridBagConstraints constraints,
Rectangle r) | Корректирует поля x, y, width и height до правильных значений в зависимости от геометрии ограничений и отступов. |
protected void | arrangeGrid(Container parent) | Размещает сетку. |
protected void | ArrangeGrid(Container parent) | Этот метод устарел и предоставлен только для обратной совместимости; новый код должен вызывать |
GridBagConstraints | getConstraints(Component comp) | Получает ограничения для указанного компонента. |
float | getLayoutAlignmentX(Container parent) | Возвращает выравнивание по оси x. |
float | getLayoutAlignmentY(Container parent) | Возвращает выравнивание по оси y. |
int[][] | getLayoutDimensions() | Определяет ширину столбцов и высоту строк для сетки макета. |
protected GridBagLayoutInfo | getLayoutInfo(Container parent,
int sizeflag) | Заполняет экземпляр |
protected GridBagLayoutInfo | GetLayoutInfo(Container parent,
int sizeflag) | Этот метод устарел и предоставлен только для обратной совместимости; новый код должен вызывать |
Point | getLayoutOrigin() | Определяет начало области макета в пространстве графических координат целевого контейнера. |
double[][] | getLayoutWeights() | Определяет веса столбцов и строк сетки макета. |
protected Dimension | getMinSize(Container parent,
GridBagLayoutInfo info) | Вычисляет минимальный размер главного элемента на основе информации из |
protected Dimension | GetMinSize(Container parent,
GridBagLayoutInfo info) | Этот метод устарел и предоставлен только для обратной совместимости; новый код должен вызывать |
void | invalidateLayout(Container target) | Аннулирует макет, указывая, что если менеджер макета кэшировал информацию, её следует отбросить. |
void | layoutContainer(Container parent) | Размещает указанный контейнер с использованием этого макета GridBag. |
Point | location(int x,
int y) | Определяет ячейку в сетке макета, которая содержит точку, заданную |
protected GridBagConstraints | lookupConstraints(Component comp) | Получает ограничения для указанного компонента. |
Dimension | maximumLayoutSize(Container target) | Возвращает максимальные размеры для этого макета, учитывая компоненты в указанном целевом контейнере. |
Dimension | minimumLayoutSize(Container parent) | Определяет минимальный размер контейнера |
Dimension | preferredLayoutSize(Container parent) | Определяет предпочтительный размер контейнера |
void | removeLayoutComponent(Component comp) | Удаляет указанный компонент из этого макета. |
void | setConstraints(Component comp,
GridBagConstraints constraints) | Устанавливает ограничения для указанного компонента в этом макете. |
String | toString() | Возвращает строковое представление значений этого макета GridBag. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait Поля
MAXGRIDSIZE
protected static final int MAXGRIDSIZE
Это поле больше не используется для резервирования массивов и сохраняется для обратной совместимости. Ранее это было максимальное количество позиций сетки (как горизонтальных, так и вертикальных), которые можно было разместить с помощью компоновщика Grid Bag Layout. Текущая реализация не накладывает никаких ограничений на размер сетки.
- См. также:
- Значения константных полей
MINSIZE
protected static final int MINSIZE
Наименьшая сетка, которую можно расположить с помощью компоновщика Grid Bag Layout.
- См. также:
- Значения константных полей
PREFERREDSIZE
protected static final int PREFERREDSIZE
Предпочтительный размер сетки, который можно расположить с помощью компоновщика Grid Bag Layout.
- См. также:
- Значения константных полей
comptable
protected Hashtable<Component,GridBagConstraints> comptable
Этот хэш-таблица поддерживает связь между компонентом и его ограничениями Grid Bag. Ключами в comptable являются компоненты, а значениями — экземпляры GridBagConstraints.
- См. также:
GridBagConstraints
defaultConstraints
protected GridBagConstraints defaultConstraints
Это поле содержит экземпляр ограничений Grid Bag, содержащий значения по умолчанию, поэтому, если у компонента нет связанных с ним ограничений Grid Bag, компоненту будет назначена копия defaultConstraints.
- См. также:
-
getConstraints(Component),setConstraints(Component, GridBagConstraints),lookupConstraints(Component)
layoutInfo
protected GridBagLayoutInfo layoutInfo
Это поле содержит информацию о макете для Grid Bag. Информация в этом поле основана на последней проверке Grid Bag. Если layoutInfo равно null, это указывает, что в Grid Bag нет компонентов или, если компоненты есть, они еще не были проверены.
- См. также:
getLayoutInfo(Container, int)
columnWidths
public int[] columnWidths
Это поле содержит переопределения минимальной ширины столбцов. Если это поле не null, значения применяются к Grid Bag после вычисления всех минимальных ширин столбцов. Если columnWidths содержит больше элементов, чем количество столбцов, к Grid Bag добавляются столбцы, чтобы соответствовать количеству элементов в columnWidth.
- См. также:
getLayoutDimensions()
rowHeights
public int[] rowHeights
Это поле содержит переопределения минимальных высот строк. Если это поле не null, значения применяются к Grid Bag после вычисления всех минимальных высот строк. Если rowHeights содержит больше элементов, чем количество строк, к Grid Bag добавляются строки, чтобы соответствовать количеству элементов в rowHeights.
- См. также:
getLayoutDimensions()
columnWeights
public double[] columnWeights
Это поле содержит переопределения весов столбцов. Если это поле не null, значения применяются к Grid Bag после вычисления всех весов столбцов. Если columnWeights[i] > весом для столбца i, то столбцу i назначается вес в columnWeights[i]. Если columnWeights содержит больше элементов, чем количество столбцов, лишние элементы игнорируются — они не приводят к созданию дополнительных столбцов.
rowWeights
public double[] rowWeights
Это поле содержит переопределения весов строк. Если это поле не null, значения применяются к Grid Bag после вычисления всех весов строк. Если rowWeights[i] > весом для строки i, то строке i назначается вес в rowWeights[i]. Если rowWeights содержит больше элементов, чем количество строк, лишние элементы игнорируются — они не приводят к созданию дополнительных строк.
Конструкторы
GridBagLayout
public GridBagLayout()
Создаёт менеджер компоновки Grid Bag.
Методы
setConstraints
public void setConstraints(Component comp,
GridBagConstraints constraints) Устанавливает ограничения для указанного компонента в этом макете.
- Параметры:
-
comp- изменяемый компонент -
constraints- применяемые ограничения
getConstraints
public GridBagConstraints getConstraints(Component comp)
Получает ограничения для указанного компонента. Возвращается копия фактического GridBagConstraints объекта.
- Параметры:
-
comp- запрашиваемый компонент - Возвращает:
- ограничение для указанного компонента в этом макете сетки; возвращается копия фактического объекта ограничения
lookupConstraints
protected GridBagConstraints lookupConstraints(Component comp)
Получает ограничения для указанного компонента. Возвращаемое значение — не копия, а фактический GridBagConstraints объект, используемый механизмом макета.
Если comp отсутствует в GridBagLayout, возвращается набор значений по умолчанию GridBagConstraints. Значение comp null является недопустимым и возвращает null.
- Параметры:
-
comp- запрашиваемый компонент - Возвращает:
- ограничения для указанного компонента
getLayoutOrigin
public Point getLayoutOrigin()
Определяет начало области макета в пространстве графических координат целевого контейнера. Это значение представляет собой пиксельные координаты левого верхнего угла области макета независимо от ComponentOrientation значения контейнера. Это отличается от начала сетки, задаваемого координатами ячейки (0,0). Большинство приложений не вызывают этот метод напрямую.
- Возвращает:
- графическое начало ячейки в левом верхнем углу сетки макета
- С:
- 1.1
- См. также:
ComponentOrientation
getLayoutDimensions
public int[][] getLayoutDimensions()
Определяет ширину столбцов и высоту строк для сетки макета.
Большинство приложений не вызывают этот метод напрямую.
- Возвращает:
- массив из двух массивов, содержащих ширины столбцов макета и высоты строк макета
- С:
- 1.1
getLayoutWeights
public double[][] getLayoutWeights()
Определяет веса столбцов и строк сетки макета. Веса используются для вычисления того, насколько данный столбец или строка расширяется за пределы своей предпочтительной величины, если у макета есть дополнительное пространство для заполнения.
Большинство приложений не вызывают этот метод напрямую.
- Возвращает:
- массив из двух массивов, представляющих горизонтальные веса столбцов макета и вертикальные веса строк макета
- С:
- 1.1
location
public Point location(int x,
int y) Определяет, какая ячейка в сетке макета содержит точку, заданную (x, y). Каждая ячейка определяется своим индексом столбца (от 0 до числа столбцов минус 1) и индексом строки (от 0 до числа строк минус 1).
Если точка (x, y) находится вне сетки, применяются следующие правила. Индекс столбца возвращается как ноль, если x находится слева от макета для контейнера слева направо или справа от макета для контейнера справа налево. Индекс столбца возвращается как число столбцов, если x находится справа от макета в контейнере слева направо или слева в контейнере справа налево. Индекс строки возвращается как ноль, если y находится выше макета, и как число строк, если y находится ниже макета. Ориентация контейнера определяется его свойством ComponentOrientation.
- Параметры:
-
x- координата x точки -
y- координата y точки - Возвращает:
- упорядоченная пара индексов, указывающая, какая ячейка в сетке макета содержит точку (x, y).
- С:
- 1.1
- См. также:
ComponentOrientation
addLayoutComponent
public void addLayoutComponent(String name,
Component comp) Не оказывает никакого влияния, так как этот менеджер макета не использует строку на компонент.
- Указано в:
-
addLayoutComponentв интерфейсеLayoutManager - Параметры:
-
name- строка, которая должна быть ассоциирована с компонентом -
comp- компонент, который должен быть добавлен
addLayoutComponent
public void addLayoutComponent(Component comp,
Object constraints) Добавляет указанный компонент в макет, используя указанный constraints объект. Обратите внимание, что ограничения изменяемые и, следовательно, клонируются при кэшировании.
- Указано в:
-
addLayoutComponentв интерфейсеLayoutManager2 - Параметры:
-
comp- компонент, который должен быть добавлен -
constraints- объект, определяющий, как компонент добавляется в макет - Исключения:
-
IllegalArgumentException- еслиconstraintsне являетсяGridBagConstraint
removeLayoutComponent
public void removeLayoutComponent(Component comp)
Удаляет указанный компонент из этого макета.
Большинство приложений не вызывают этот метод напрямую.
- Указано в:
-
removeLayoutComponentв интерфейсеLayoutManager - Параметры:
-
comp- компонент, который нужно удалить. - См. также:
-
Container.remove(java.awt.Component),Container.removeAll()
preferredLayoutSize
public Dimension preferredLayoutSize(Container parent)
Определяет предпочтительный размер контейнера parent с использованием этого макета сетки.
Большинство приложений не вызывают этот метод напрямую.
- Указано в:
-
preferredLayoutSizeв интерфейсеLayoutManager - Параметры:
-
parent- контейнер, в котором нужно выполнить макет - Возвращает:
- предпочтительный размер контейнера
parent - См. также:
Container.getPreferredSize()
minimumLayoutSize
public Dimension minimumLayoutSize(Container parent)
Определяет минимальный размер контейнера parent с использованием этого макета сетки.
Большинство приложений не вызывают этот метод напрямую.
- Указано в:
-
minimumLayoutSizeв интерфейсеLayoutManager - Параметры:
-
parent- контейнер, в котором нужно выполнить макет - Возвращает:
- минимальный размер контейнера
parent - См. также:
Container.doLayout()
maximumLayoutSize
public Dimension maximumLayoutSize(Container target)
Возвращает максимальные размеры для этого макета, учитывая компоненты в указанном целевом контейнере.
- Указано в:
-
maximumLayoutSizeв интерфейсеLayoutManager2 - Параметры:
-
target- контейнер, который нужно выровнять - Возвращает:
- максимальные размеры для этого макета
- См. также:
-
Container,minimumLayoutSize(Container),preferredLayoutSize(Container)
getLayoutAlignmentX
public float getLayoutAlignmentX(Container parent)
Возвращает выравнивание по оси x. Это указывает, как компонент хочет быть выровнен относительно других компонентов. Значение должно быть числом от 0 до 1, где 0 соответствует выравниванию по началу, 1 выровнен максимально далеко от начала, 0,5 — по центру и т. д.
- Указано в:
-
getLayoutAlignmentXв интерфейсеLayoutManager2 - Параметры:
-
parent- целевой контейнер - Возвращает:
- значение
0.5fдля указания центрирования
getLayoutAlignmentY
public float getLayoutAlignmentY(Container parent)
Возвращает выравнивание по оси y. Это указывает, как компонент хочет быть выровнен относительно других компонентов. Значение должно быть числом от 0 до 1, где 0 соответствует выравниванию по началу, 1 выровнен максимально далеко от начала, 0,5 — по центру и т. д.
- Указано в:
-
getLayoutAlignmentYв интерфейсеLayoutManager2 - Параметры:
-
parent- целевой контейнер - Возвращает:
- значение
0.5fдля указания центрирования
invalidateLayout
public void invalidateLayout(Container target)
Делает макет недействительным, указывая, что если менеджер макета кэшировал информацию, её следует удалить.
- Указано в:
-
invalidateLayoutв интерфейсеLayoutManager2 - Параметры:
-
target- целевой контейнер
layoutContainer
public void layoutContainer(Container parent)
Выполняет макетирование указанного контейнера с помощью этого макета сетки. Этот метод изменяет размер компонентов в указанном контейнере, чтобы удовлетворить ограничениям этого объекта GridBagLayout.
Большинство приложений не вызывают этот метод напрямую.
- Указано в:
-
layoutContainerв интерфейсеLayoutManager - Параметры:
-
parent- контейнер, в котором нужно выполнить макет - См. также:
-
Container,Container.doLayout()
toString
public String toString()
Возвращает строковое представление значений этого макета сетки.
getLayoutInfo
protected GridBagLayoutInfo getLayoutInfo(Container parent,
int sizeflag) Заполняет экземпляр GridBagLayoutInfo для текущего набора управляемых дочерних элементов. Это требует трех проходов по набору дочерних элементов:
- Определить размеры сетки макета.
- Определить ячейки, которые занимают компоненты.
- Распределить веса и минимальные размеры между строками/столбцами.
Этот метод должен использоваться только внутри GridBagLayout.
- Параметры:
-
parent- контейнер макета -
sizeflag- либоPREFERREDSIZE, либоMINSIZE - Возвращает:
- экземпляр
GridBagLayoutInfoдля набора дочерних элементов - С:
- 1.4
GetLayoutInfo
protected GridBagLayoutInfo GetLayoutInfo(Container parent,
int sizeflag) Этот метод устарел и предоставляется только для обратной совместимости; новый код должен вызывать getLayoutInfo вместо этого. Заполняет экземпляр GridBagLayoutInfo для текущего набора управляемых дочерних элементов. Этот метод аналогичен getLayoutInfo; см. описание getLayoutInfo для получения подробностей.
- Параметры:
-
parent- контейнер макета -
sizeflag- либоPREFERREDSIZE, либоMINSIZE - Возвращает:
- экземпляр
GridBagLayoutInfoдля набора дочерних элементов
adjustForGravity
protected void adjustForGravity(GridBagConstraints constraints,
Rectangle r) Настраивает поля x, y, width и height до правильных значений в зависимости от геометрии ограничений и отступов. Этот метод должен использоваться только внутри GridBagLayout.
- Параметры:
-
constraints- применяемые ограничения -
r-Rectangleдля корректировки - С:
- 1.4
AdjustForGravity
protected void AdjustForGravity(GridBagConstraints constraints,
Rectangle r) Настраивает поля x, y, width и height до правильных значений в зависимости от геометрии ограничений и отступов.
Этот метод устарел и предоставляется только для обратной совместимости; новый код должен вызывать adjustForGravity вместо этого. Этот метод аналогичен adjustForGravity
- Параметры:
-
constraints- применяемые ограничения -
r-Rectangleдля корректировки
getMinSize
protected Dimension getMinSize(Container parent,
GridBagLayoutInfo info) Определяет минимальный размер главного элемента на основе информации из getLayoutInfo. Этот метод должен использоваться только внутри GridBagLayout.
- Параметры:
-
parent- контейнер макета -
info- информация о макете для этого родительского элемента - Возвращает:
- объект
Dimension, содержащий минимальный размер - С:
- 1.4
GetMinSize
protected Dimension GetMinSize(Container parent,
GridBagLayoutInfo info) Этот метод устарел и предоставляется только для обратной совместимости; новый код должен вызывать getMinSize вместо этого. Этот метод аналогичен getMinSize
- Параметры:
-
parent- контейнер макета -
info- информация о макете для этого родительского элемента - Возвращает:
- объект
Dimension, содержащий минимальный размер
arrangeGrid
protected void arrangeGrid(Container parent)
Выполняет компоновку сетки. Этот метод должен использоваться только внутри GridBagLayout.
- Параметры:
-
parent- контейнер макета - С:
- 1.4
ArrangeGrid
protected void ArrangeGrid(Container parent)
Этот метод устарел и предоставляется только для обратной совместимости; новый код должен вызывать arrangeGrid вместо этого. Этот метод аналогичен arrangeGrid
- Параметры:
-
parent- контейнер макета
© 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/awt/GridBagLayout.html