Spec-Zone.ru › OpenJDK 24

Класс GridLayout

java.lang.Object
java.awt.GridLayout
Все реализованные интерфейсы:
LayoutManager, Serializable
public class GridLayout extends Object implements LayoutManager, Serializable
Класс GridLayout — это менеджер компоновки, который выкладывает компоненты контейнера в прямоугольную сетку. Контейнер делится на прямоугольники равного размера, и в каждый прямоугольник помещается один компонент. Например, следующий апплет выкладывает шесть кнопок в три строки и два столбца:
 import java.awt.*;
 import java.applet.Applet;
 public class ButtonGrid extends Applet {
     public void init() {
         setLayout(new GridLayout(3,2));
         add(new Button("1"));
         add(new Button("2"));
         add(new Button("3"));
         add(new Button("4"));
         add(new Button("5"));
         add(new Button("6"));
     }
 }
 

Если свойство контейнера ComponentOrientation настроено на горизонтальную ориентацию слева направо, то пример выведет результат, показанный на рисунке 1. Если свойство контейнера ComponentOrientation настроено на горизонтальную ориентацию справа налево, то пример выведет результат, показанный на рисунке 2.

Shows 6 buttons in rows of 2. Row 1 shows buttons 1 then 2.
        Row 2 shows buttons 3 then 4. Row 3 shows buttons 5 then 6.

Рисунок 1: Горизонтально, слева направо

Shows 6 buttons in rows of 2. Row 1 shows buttons 2 then 1.
        Row 2 shows buttons 4 then 3. Row 3 shows buttons 6 then 5.

Рисунок 2: Горизонтально, справа налево


Если как количество строк, так и количество столбцов установлено в ненулевые значения, либо конструктором, либо методами setRows и setColumns, то заданное количество столбцов игнорируется. Вместо этого количество столбцов определяется из заданного количества строк и общего количества компонентов в компоновке. Например, если задано три строки и два столбца, а в компоновку добавлено девять компонентов, они будут отображены как три строки по три столбца. Задание количества столбцов влияет на компоновку только тогда, когда количество строк равно нулю.

С тех пор:
1.0
См. также:
  • Сериализованная форма

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

Конструктор Описание
GridLayout()
Создаёт компоновку сетки по умолчанию с одним столбцом на компонент в единственной строке.
GridLayout(int rows, int cols)
Создаёт компоновку сетки с заданным количеством строк и столбцов.
GridLayout(int rows, int cols, int hgap, int vgap)
Создаёт компоновку сетки с заданным количеством строк и столбцов.

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

Модификатор и тип Метод Описание
void addLayoutComponent(String name, Component comp)
Добавляет указанный компонент с указанным именем в компоновку.
int getColumns()
Возвращает количество столбцов в этой компоновке.
int getHgap()
Возвращает горизонтальный зазор между компонентами.
int getRows()
Возвращает количество строк в этой компоновке.
int getVgap()
Возвращает вертикальный зазор между компонентами.
void layoutContainer(Container parent)
Компонует указанный контейнер с использованием этой компоновки.
Dimension minimumLayoutSize(Container parent)
Определяет минимальный размер аргумента контейнера, используя эту компоновку сетки.
Dimension preferredLayoutSize(Container parent)
Определяет предпочтительный размер аргумента контейнера, используя эту компоновку сетки.
void removeLayoutComponent(Component comp)
Удаляет указанный компонент из компоновки.
void setColumns(int cols)
Устанавливает количество столбцов в этой компоновке в заданное значение.
void setHgap(int hgap)
Устанавливает горизонтальный зазор между компонентами в заданное значение.
void setRows(int rows)
Устанавливает количество строк в этой компоновке в заданное значение.
void setVgap(int vgap)
Устанавливает вертикальный зазор между компонентами в заданное значение.
String toString()
Возвращает строковое представление значений этой компоновки сетки.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

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

GridLayout

public GridLayout()
Создаёт макет сетки по умолчанию с одним столбцом на компонент в одной строке.
Since:
1.1

GridLayout

public GridLayout(int rows, int cols)
Создаёт макет сетки с указанным количеством строк и столбцов. Все компоненты в макете имеют равный размер.

Одно, но не оба значения, rows и cols могут быть равны нулю, что означает, что любое количество объектов может быть размещено в строке или столбце.

Parameters:
rows - строки, значение нуль означает любое количество строк.
cols - столбцы, значение нуль означает любое количество столбцов.

GridLayout

public GridLayout(int rows, int cols, int hgap, int vgap)
Создаёт макет сетки с указанным количеством строк и столбцов. Все компоненты в макете имеют равный размер.

Кроме того, горизонтальный и вертикальный отступы устанавливаются в указанные значения. Горизонтальные отступы размещаются между каждым из столбцов. Вертикальные отступы размещаются между каждой из строк.

Одно, но не оба значения, rows и cols могут быть равны нулю, что означает, что любое количество объектов может быть размещено в строке или столбце.

Все GridLayout конструкторы делегируют вызов этому.

Parameters:
rows - строки, значение нуль означает любое количество строк
cols - столбцы, значение нуль означает любое количество столбцов
hgap - горизонтальный отступ
vgap - вертикальный отступ
Throws:
IllegalArgumentException - если значение и rows и cols установлено в ноль

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

getRows

public int getRows()
Возвращает количество строк в этом макете.
Returns:
количество строк в этом макете
Since:
1.1

setRows

public void setRows(int rows)
Устанавливает количество строк в этом макете в указанное значение.
Parameters:
rows - количество строк в этом макете
Throws:
IllegalArgumentException - если значение и rows и cols установлено в ноль
Since:
1.1

getColumns

public int getColumns()
Возвращает количество столбцов в этом макете.
Returns:
количество столбцов в этом макете
Since:
1.1

setColumns

public void setColumns(int cols)
Устанавливает количество столбцов в этом макете в указанное значение. Установка количества столбцов не оказывает влияния на макет, если количество строк, указанное в конструкторе или методом setRows, не равно нулю. В этом случае количество отображаемых столбцов в макете определяется общим количеством компонентов и количеством указанных строк.
Parameters:
cols - количество столбцов в этом макете
Throws:
IllegalArgumentException - если значение и rows и cols установлено в ноль
Since:
1.1

getHgap

public int getHgap()
Возвращает горизонтальный отступ между компонентами.
Returns:
горизонтальный отступ между компонентами
Since:
1.1

setHgap

public void setHgap(int hgap)
Устанавливает горизонтальный отступ между компонентами в указанное значение.
Parameters:
hgap - горизонтальный отступ между компонентами
Since:
1.1

getVgap

public int getVgap()
Возвращает вертикальный отступ между компонентами.
Returns:
вертикальный отступ между компонентами
Since:
1.1

setVgap

public void setVgap(int vgap)
Устанавливает вертикальный отступ между компонентами в указанное значение.
Parameters:
vgap - вертикальный отступ между компонентами
Since:
1.1

addLayoutComponent

public void addLayoutComponent(String name, Component comp)
Добавляет указанный компонент с указанным именем в макет.
Specified by:
addLayoutComponent в интерфейсе LayoutManager
Parameters:
name - имя компонента
comp - добавляемый компонент

removeLayoutComponent

public void removeLayoutComponent(Component comp)
Удаляет указанный компонент из макета.
Specified by:
removeLayoutComponent в интерфейсе LayoutManager
Parameters:
comp - компонент для удаления

preferredLayoutSize

public Dimension preferredLayoutSize(Container parent)
Определяет предпочтительный размер аргумента контейнера, используя этот макет сетки.

Предпочтительная ширина макета сетки — это максимальная предпочтительная ширина всех компонентов в контейнере, умноженная на количество столбцов, плюс горизонтальный отступ, умноженный на количество столбцов минус один, плюс левые и правые отступы целевого контейнера.

Предпочтительная высота макета сетки — это максимальная предпочтительная высота всех компонентов в контейнере, умноженная на количество строк, плюс вертикальный отступ, умноженный на количество строк минус один, плюс верхние и нижние отступы целевого контейнера.

Specified by:
preferredLayoutSize в интерфейсе LayoutManager
Parameters:
parent - контейнер, для которого нужно выполнить макетирование
Returns:
предпочтительные размеры для размещения подкомпонентов указанного контейнера
See Also:
  • minimumLayoutSize(java.awt.Container)
  • Container.getPreferredSize()

minimumLayoutSize

public Dimension minimumLayoutSize(Container parent)
Определяет минимальный размер аргумента контейнера, используя этот макет сетки.

Минимальная ширина макета сетки — это максимальная минимальная ширина всех компонентов в контейнере, умноженная на количество столбцов, плюс горизонтальный отступ, умноженный на количество столбцов минус один, плюс левые и правые отступы целевого контейнера.

Минимальная высота макета сетки — это максимальная минимальная высота всех компонентов в контейнере, умноженная на количество строк, плюс вертикальный отступ, умноженный на количество строк минус один, плюс верхние и нижние отступы целевого контейнера.

Specified by:
minimumLayoutSize в интерфейсе LayoutManager
Parameters:
parent - контейнер, для которого нужно выполнить макетирование
Returns:
минимальные размеры, необходимые для размещения подкомпонентов указанного контейнера
See Also:
  • preferredLayoutSize(java.awt.Container)
  • Container.doLayout()

layoutContainer

public void layoutContainer(Container parent)
Размещает указанный контейнер с использованием этого макета.

Этот метод переформирует компоненты в указанном целевом контейнере, чтобы удовлетворить ограничениям объекта GridLayout.

Менеджер макета сетки определяет размер отдельных компонентов, разделив свободное пространство в контейнере на равные части в соответствии с количеством строк и столбцов в макете. Свободное пространство контейнера равно размеру контейнера минус любые отступы и любой указанный горизонтальный или вертикальный отступ. Все компоненты в макете сетки имеют одинаковый размер.

Specified by:
layoutContainer в интерфейсе LayoutManager
Parameters:
parent - контейнер, для которого нужно выполнить макетирование
See Also:
  • Container
  • Container.doLayout()

toString

public String toString()
Возвращает строковое представление значений этого макета сетки.
Overrides:
toString в классе Object
Returns:
строковое представление этого макета сетки

© 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.desktop/java/awt/GridLayout.html

Spec-Zone.ru

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