Класс 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.
|
|
|
| Рисунок 1: Горизонтально, слева направо | Рисунок 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 могут быть нулём, что означает любое количество объектов в строке или в столбце.
- Параметры:
-
rows- строки, значение ноль означает любое количество строк. -
cols- столбцы, значение ноль означает любое количество столбцов.
GridLayout
public GridLayout(int rows,
int cols,
int hgap,
int vgap) Создаёт макет сетки с указанным количеством строк и столбцов. Все компоненты в макете получают равный размер.
Кроме того, горизонтальные и вертикальные отступы устанавливаются в указанные значения. Горизонтальные отступы размещаются между каждым из столбцов. Вертикальные отступы размещаются между каждой из строк.
Одно, но не оба значения rows и cols могут быть нулём, что означает любое количество объектов в строке или в столбце.
Все GridLayout конструкторы делегируют выполнение этому.
- Параметры:
-
rows- строки, значение ноль означает любое количество строк -
cols- столбцы, значение ноль означает любое количество столбцов -
hgap- горизонтальный отступ -
vgap- вертикальный отступ - Исключения:
-
IllegalArgumentException- если значение обоихrowsиcolsустановлено в ноль
Методы
getRows
public int getRows()
Возвращает количество строк в этом макете.
- Возвращает:
- количество строк в этом макете
- Since:
- 1.1
setRows
public void setRows(int rows)
Устанавливает количество строк в этом макете в указанное значение.
- Параметры:
-
rows- количество строк в этом макете - Исключения:
-
IllegalArgumentException- если значение обоихrowsиcolsустановлено в ноль - Since:
- 1.1
getColumns
public int getColumns()
Возвращает количество столбцов в этом макете.
- Возвращает:
- количество столбцов в этом макете
- Since:
- 1.1
setColumns
public void setColumns(int cols)
Устанавливает количество столбцов в этом макете в указанное значение. Установка количества столбцов не влияет на макет, если количество строк, указанное в конструкторе или методом setRows, не равно нулю. В этом случае количество отображаемых столбцов в макете определяется общим количеством компонентов и количеством строк, указанных в макете.
- Параметры:
-
cols- количество столбцов в этом макете - Исключения:
-
IllegalArgumentException- если значение обоихrowsиcolsустановлено в ноль - Since:
- 1.1
getHgap
public int getHgap()
Возвращает горизонтальный отступ между компонентами.
- Возвращает:
- горизонтальный отступ между компонентами
- Since:
- 1.1
setHgap
public void setHgap(int hgap)
Устанавливает горизонтальный отступ между компонентами в указанное значение.
- Параметры:
-
hgap- горизонтальный отступ между компонентами - Since:
- 1.1
getVgap
public int getVgap()
Возвращает вертикальный отступ между компонентами.
- Возвращает:
- вертикальный отступ между компонентами
- Since:
- 1.1
setVgap
public void setVgap(int vgap)
Устанавливает вертикальный отступ между компонентами в указанное значение.
- Параметры:
-
vgap- вертикальный отступ между компонентами - Since:
- 1.1
addLayoutComponent
public void addLayoutComponent(String name,
Component comp) Добавляет указанный компонент с указанным именем в макет.
- Определено в:
-
addLayoutComponentв интерфейсеLayoutManager - Параметры:
-
name- имя компонента -
comp- добавляемый компонент
removeLayoutComponent
public void removeLayoutComponent(Component comp)
Удаляет указанный компонент из макета.
- Определено в:
-
removeLayoutComponentв интерфейсеLayoutManager - Параметры:
-
comp- компонент для удаления
preferredLayoutSize
public Dimension preferredLayoutSize(Container parent)
Определяет предпочтительный размер контейнера argument с использованием этого макета сетки.
Предпочтительная ширина макета сетки — это максимальная предпочтительная ширина всех компонентов в контейнере, умноженная на количество столбцов, плюс горизонтальный отступ, умноженный на количество столбцов минус один, плюс отступы слева и справа целевого контейнера.
Предпочтительная высота макета сетки — это максимальная предпочтительная высота всех компонентов в контейнере, умноженная на количество строк, плюс вертикальный отступ, умноженный на количество строк минус один, плюс отступы сверху и снизу целевого контейнера.
minimumLayoutSize
public Dimension minimumLayoutSize(Container parent)
Определяет минимальный размер контейнера argument с использованием этого макета сетки.
Минимальная ширина макета сетки — это максимальная минимальная ширина всех компонентов в контейнере, умноженная на количество столбцов, плюс горизонтальный отступ, умноженный на количество столбцов минус один, плюс отступы слева и справа целевого контейнера.
Минимальная высота макета сетки — это максимальная минимальная высота всех компонентов в контейнере, умноженная на количество строк, плюс вертикальный отступ, умноженный на количество строк минус один, плюс отступы сверху и снизу целевого контейнера.
layoutContainer
public void layoutContainer(Container parent)
Размещает указанный контейнер с использованием этого макета.
Этот метод перестраивает компоненты в указанном целевом контейнере, чтобы удовлетворить ограничениям объекта GridLayout.
Менеджер макета сетки определяет размер отдельных компонентов, разделив свободное пространство в контейнере на равные части в соответствии с количеством строк и столбцов в макете. Свободное пространство контейнера равно размеру контейнера минус любые отступы и любые указанные горизонтальные или вертикальные отступы. Все компоненты в макете сетки получают одинаковый размер.
toString
public String toString()
Возвращает строковое представление значений этого макета сетки.
© 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/GridLayout.html