본문 바로가기

자바공부

자바 BorderLayout 배치관리자, 명품자바프로그래밍 9장

728x90
반응형

* BorderLayout 배치관리자는 컨테이너 공간을 동(EAST), 서(WEST), 남(SOUTH), 북(NORTH), 중앙(CENTER)의 5개 영역으로 분할하여 배치한다.

 

* 다른 배치관리자와는 달리 BorderLayout 배치관리자를 가진 컨테이너에 컴포넌트를 삽입하기 위해서는 add()메소드를 사용하여 컴포넌트의 위치를 명확히 정해주어야 한다.

void add(Component comp, int index); // comp 컴포넌트를 index위치에 삽입한다.

// Example
container.setLayout(new BorderLayout());
container.add(new JButton("div"), BorderLayout.WEST);
container.add(new JButton("Calculate"), BorderLayout.Center);

 

* BorderLayout 배치관리자를 사용하는 컨테이너는 일차적으로 5개의 컴포넌트밖에 붙일 수가 없다. 

이 한계를 극복하려면 5개 중 임의의 영역에 JPanel 등 다른 컨테이너를 부착하고 이 컨테이너에 다시 컴포넌트를 부착하면 된다.

 

* BorderLayout의 생성자와 속성

생성자: Bordrlayout(int hGap, int vGap)

hGap, vGap 값을 가진 BorderLayout 배치관리자를 생성한다.

hGap: 좌우 두 컴포넌트 사이의 수평 간격, 픽셀 단위, 디폴트는 0

vGap: 좌우 두 컴포넌트 사이의 수직 간격, 픽셀 단위, 디폴트는 0

new Borderlayout(); // hGap=0, vGap=0인 BorderLayout 배치관리자 생성
new Borderlayout(30, 20); // hGap=30, vGap=20인 BorderLayout 배치관리자 생성

 

반응형