Spec-Zone.ru › OpenJDK 21

Класс 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, 2023, 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/21/docs/api/java.desktop/java/awt/GridLayout.html

Spec-Zone.ru

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