Dev_Study/Java_backup

[JAVA / SWING] 배치관리자(Layout Manager) - BoxLayout

LeeDaniel 2016. 10. 7. 05:10
import java.awt.Component;

import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class BoxLayoutEx extends JFrame {
	
	public BoxLayoutEx (){
		
		setTitle("BoxLayout 입니다");
		setSize(300, 300);
		setLocationRelativeTo(null); //화면 중앙에 생성
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setVisible(true);
		
		JPanel jp = new JPanel();
		jp.setLayout(new BoxLayout(jp, BoxLayout.Y_AXIS)); //Y축 방향으로 컴포넌트를 쌓는다
		
		makeBt(jp, "버튼1");
		makeBt(jp, "버튼2");
		makeBt(jp, "버튼3");
		makeBt(jp, "버튼4");
		makeBt(jp, "버튼5");
		makeBt(jp, "버튼6");
		add(jp);
		pack(); //서브 컴퍼넌트의 추천 사이즈 및 레이아웃에 맞추어, 이 Window를 사이즈 변경합니다.

	}
	
	public void makeBt(JPanel panel, String text){
		JButton bt = new JButton(text);
		bt.setAlignmentX(Component.CENTER_ALIGNMENT);
		panel.add(bt);
	}

	public static void main(String[] args) {
		BoxLayoutEx e = new BoxLayoutEx();
	}
	
}


반응형