java
JAVA - BorderLayout 이란?
동서남북(상하좌우)과 가운데를 배치할 수 있으며, 기본 값입니다.
- 구성 요소는 원하는 크기에 따라 배치됩니다.
북쪽 및 남쪽 구성 요소는 수평으로 뻗어있을 수 있습니다.
동쪽 및 서쪽 구성 요소는 세로로 늘어서있을 수 있습니다.
중심 구성 요소는 남아있는 공간을 채우기 위해 가로 및 세로로 늘일 수 있습니다. - 절대 위치 지정 외에도 컨테이너의 구성 요소 방향이 오른쪽에서 왼쪽으로 설정된 경우 서쪽 및 동쪽 구성 요소를 서로 바꿔주는 상대 위치 지정을 지원합니다.
상대 위치 지정을 사용하려면 먼저 4 개의 측면 영역 중 하나에 구성 요소를 추가한 다음 해당 구성 요소의 레이아웃 속성을 PAGE_START, PAGE_END, LINE_START 또는 LINE_END로 변경합니다.
매개변수:
BorderLayout()
기본 값입니다.
BorderLayout(int hgap, int vgap)
수평 간격, 수직 간격을 설정합니다.
void setHgap(int hgap)
수평 간격을 조절
void setVgap(int vgap)
수직 간격을 설정
// ex.1)
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
class BordLayout extends JFrame{
public BordLayout() {
super("타이틀");
init();
setSize(500,200);
setVisible(true);
}
public void init(){
add(new JButton("Center"));
add(new JButton("West"),BorderLayout.LINE_START);
add(new JButton("East"),BorderLayout.LINE_END);
add(new JButton("North"),BorderLayout.PAGE_START);
add(new JButton("South"),BorderLayout.PAGE_END);
}
}
public class Ex06 {
public static void main(String[] args) {
new BordLayout();
}
}
// ex.2)
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Ex03 extends JFrame{
// 패널 초기화. 그룹화 합니다.
JPanel jp = null;
// 버튼 초기화
JButton jb1, jb2, jb3, jb4, jb5 = null; // 버튼 초기화
public Ex03(){
// JFrame의 생성자에 값을 입력하면 제목 표시줄을 설정할 수 있습니다.
super("제목 표시줄");
jb1 = new JButton("북쪽");
jb2 = new JButton("서쪽");
jb3 = new JButton("가운데");
jb4 = new JButton("동쪽");
jb5 = new JButton("남쪽");
// 버튼을 그룹화 합니다.
jp = new JPanel();
// 패널에 보더 레이아웃을 설정합니다.
jp.setLayout(new BorderLayout());
// jp 라는 패널에 jb라는 버튼 추가
// 북쪽 레이아웃 설정
jp.add(jb1, "North");
// 서쪽 레이아웃 설정
jp.add(jb2, "West");
// 가운데 레이아웃 설정
jp.add(jb3, "Center");
// 동쪽 레이아웃 설정
jp.add(jb4, "East");
// 남쪽 레이아웃 설정
jp.add(jb5, "South");
// JFrame에 jp라는 패널 추가
add(jp);
// JFrame 창 크기
setSize(400, 300);
// 창을 보여주려면 true, 아니면 false
setVisible(true);
// 종료 버튼을 눌렀을때 종료
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args){
new Ex03();
}
}
0 댓글