GridLayout 모든 구성요소를 직사각형 그리드에 넣고 같은 크기의 직사각형으로 나눕니다. 각 구성요소는 직사각형 안에 배치되는 반면 GridBagLayout 유연한 레이아웃 관리자 구성요소를 수직 및 수평 정렬 구성 요소의 크기가 동일하지 않아도 됩니다. 각 GridBagLayout 개체는 동적 직사각형 셀 그리드를 유지합니다. 구성요소 라는 하나 이상의 셀을 차지하는 각 구성요소 디스플레이 영역 .
그리드 레이아웃
A 그리드 레이아웃 사각형 격자에 구성 요소를 정렬합니다. 셀의 구성 요소를 정렬하며 각 셀은 동일한 크기를 갖습니다. . 구성요소는 열 및 행에 배치됩니다. . GridLayout(int 행, int 열) 열과 행인 두 개의 매개변수를 사용합니다.
예
import java.awt.*;
import javax.swing.*;
public class GridLayoutTest{
GridLayoutTest() {
JFrame frame = new JFrame("GridLayout Test");
JButton button1, button2, button3, button4;
button1 = new JButton("Button 1");
button2 = new JButton("Button 2");
button3 = new JButton("Button 3");
button4 = new JButton("Button 4");
frame.add(button1);
frame.add(button2);
frame.add(button3);
frame.add(button4);
frame.setLayout(new GridLayout(2,2));
frame.setSize(300,300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
public static void main(String[] args) {
new GridLayoutTest();
}
} 출력

그리드백 레이아웃
A GridBagLayout GridLayout의 기능을 확장합니다. 그리드백 레이아웃 그리드의 각 개별 셀에 구성요소를 배치하고 구성요소가 여러 열 또는 행으로 확장되도록 합니다. GridBagLayout을 사용하려면 , GridBagConstraints 를 생성해야 합니다. 개체 적절한 속성을 채우십시오.
예
import javax.swing.*;
import java.awt.*;
public class GridBagLayoutTest extends JFrame {
public GridBagLayoutTest() {
setTitle("GridBagLayout Test");
setLayout(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridx = 5;
gbc.gridy = 0;
add(new JButton("Button1"), gbc);
gbc.gridx = 0;
gbc.gridy = 5;
add(new JButton("Button2"), gbc);
gbc.gridx = 2;
gbc.gridy = 4;
add(new JButton("Button3"), gbc);
}
public static void main(String[] args) {
GridBagLayoutTest gbcTest = new GridBagLayoutTest();
gbcTest.setSize(300,300);
gbcTest.setVisible(true);
gbcTest.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
} 출력
