본문 바로가기

[자바] BorderLayout

간단하게 알아보자...

 

 

BorderLayout은 위에서 보는 것처럼

북쪽의 North , 중심의 Center

남쪽의 South , 서쪽의 West , 동쪽의 East

이렇게 구성되어있습니다.

 

위의 사진만 봐서는 잘 이해가

안될 수도 있기 때문에

한번 코드로 만들어보겠습니다.

 

 

1. 각 위치에 따른 JButton을 생성

그에 따른 이름을 지어준다.

 

2. 생성한 JButton

BorderLayout을 이용해서

각 위치에 배치합니다.

이때 BorderLayout.(배치할 위치)를 입력해야

해당 위치로 JButton을 설정할 수 있습니다.

 

3. setSize(int width, int height);

setVisible(true);

창의 크기와 입력한 창이

보일 수 있도록 가시성을 부여하면 끝

 

 

여기서 추가적으로 생각을 해보면

BorderLayout안에 또 BorderLayout을 넣으면

어떻게 될까?

 

그래서 JButton("South")에 새로운

SouthEast와 SouthWest 버튼을

만들어보겠습니다.

 

 

아까 코드와 바뀐 부분은

South 부분의 JButton을 담기 위해서

추가적으로 pnlSouth를 생성했습니다.

 

그리고 pnlSouth안에

BorderLayout을 생성을 함으로써,

버튼의 위치를 구상합니다.

 

 

아까와 다른 점을 보면

South 위치의 양쪽에

SouthWest와 SouthEast가

생성되었습니다.

 

이를 다른 Layout과 함께 응용해서 사용하면

그 방법은 무궁무진합니다.

 

그럼 여기까지

[자바] BorderLayout에 대해서

간단하게 알아보았습니다.

 

부족한 글 읽어주셔서

감사합니다.

 

package BorderLayoutEx;

import javax.swing.JFrame;

import java.awt.BorderLayout;
import java.awt.Button;

import javax.swing.JButton;
import javax.swing.JPanel;

public class Ex01 extends JFrame {
	
	public Ex01() {
		
		// 각 위치에 해당하는 JButton 생성
		JButton btnSouth = new JButton("South");
		JButton btnNorth = new JButton("North");
		JButton btnCenter = new JButton("Center");
		JButton btnEast = new JButton("East");
		JButton btnWest = new JButton("West");	
		
		// South에 JButton을 담을 Panel을 생성한다
		// South 위치 안에 또 BorderLayout 생성을 위해서 + 추가로 new BorderLayout
		JPanel pnlSouth = new JPanel(new BorderLayout());
		JButton btnSouthEast = new JButton("SouthEast");
		JButton btnSouthWest = new JButton("SouthWest");
		
		pnlSouth.add(btnSouth, BorderLayout.CENTER);
		pnlSouth.add(btnSouthEast, BorderLayout.EAST);
		pnlSouth.add(btnSouthWest, BorderLayout.WEST);
		
		// 각 생성한 버튼을 BorderLayout을 통해서 각 위치에 배치
		add(pnlSouth, BorderLayout.SOUTH);
		add(btnNorth, BorderLayout.NORTH);
		add(btnCenter, BorderLayout.CENTER);
		add(btnEast, BorderLayout.EAST);
		add(btnWest, BorderLayout.WEST);
		
		//setTitle("BorderLayoutEx");
		setSize(500,500); // 창의 사이즈를 설정
		//setLocation(680,300); // 실행시에 창의 처음 위치를 지정
		//setDefaultCloseOperation(EXIT_ON_CLOSE); // 종료버튼 누를시에 바로 종료
		setVisible(true); // 가시성 부여 (눈에 보이게 하기)
		//setResizable(false); // 창의 사이즈를 고정
		
	}
	
	public static void main(String[] args) {
		new Ex01();
	}
}

93 DL

Develop Life