최원종의 개발 블로그

BoarderLayout 본문

Java/SWING

BoarderLayout

chl6698 2026. 3. 6. 16:47

BorderLayout은 자바 Swing에서 사용하는 레이아웃 관리자(Layout Manager) 중 하나로,

화면을 5개의 영역으로 나누어 컴포넌트를 배치하는 방식.

 

화면 구조

        NORTH
-------------------------
WEST   CENTER      EAST
-------------------------
        SOUTH

실습 코드

package com.tenco.swing.ch01;

import javax.swing.*;
import java.awt.*;

public class MyBorderLayout extends JFrame {
    private JButton[] buttons;
    private String[] directions = {BorderLayout.NORTH,
            BorderLayout.WEST,
            BorderLayout.EAST,
            BorderLayout.SOUTH,
            BorderLayout.CENTER
    };

    public MyBorderLayout() {
        setTitle("boarderLayout 연습");
        setSize(600, 600);
        setVisible(true);
        //x 누르면 동시에 프로그램도 종료
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        run(); //실행 호출
    }

    private void initData() {
        buttons = new JButton[5];
        for (int i = 0; i < buttons.length; i++) {
            buttons[i] = new JButton("button" + (i + 1));
        }
    }

    private void setInitLayout() {
        BorderLayout borderLayout = new BorderLayout();
        setLayout(borderLayout);
        for (int i = 0; i < buttons.length; i++) {
            add(buttons[i], directions[i]);
        }

    }

    public final void run() {
        initData();
        setInitLayout();
    }

}

 

-실행하는 코드

package com.tenco.swing.ch01;

public class Main2 {
    public static void main(String[] args) {
        MyBorderLayout borderLayout = new MyBorderLayout();
        borderLayout.run();
    }
}

 

-실행 화면

 

'Java > SWING' 카테고리의 다른 글

이벤트 리스너(ActionListener)  (0) 2026.03.16
패널 만들어 보기  (0) 2026.03.09
좌표값으로 컴포넌트 배치  (0) 2026.03.09
기본적인 컴포넌트  (0) 2026.03.09
JFrame  (0) 2026.03.06