package javacodebook.gui.layouts;

import javax.swing.*;
import java.awt.*;

/**
 * @author Benjamin Rusch
 * 
 * In diesem Frame wird das Layout der ContentPane auf BoxLayout
 * gesetzt. Das BoxLayout ordnet hinzugefügte Komponenten, je nach 
 * Angabe, horizontal oder vertikal an. 
 * Die bevorzugte Größe der Komponenten wird berücksichtigt.
 */

public class BoxFrame  extends JFrame {
	
	private JButton one = new JButton("eins");
	private JButton two = new JButton("zwei");
	private JButton three = new JButton("drei");
	private JButton four = new JButton("vier");
	private JButton five = new JButton("fünf");
	private Container content = null;
	
	/**
 	*	Konstruktor von BoxFrame.  
 	*/	
	public BoxFrame(String title) {
		
		super(title);
		
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);	 
	  	content = this.getContentPane();
		
		// Eine Instanz von dem Layout wird benötigt, im Konstruktor 
		// muss im Gegensatz zu den anderen Layout eine Referenz auf den
		// Container mitgegeben werden, der gelayoutet werden soll.
		// Der zweite Parameter gibt an, ob die Komponenten horizontal 
		// oder vertikal ausgerichtet werden sollen.	
		BoxLayout boxLayout= 	new BoxLayout(content, BoxLayout.X_AXIS);
		
		content.setLayout(boxLayout);
		
		content.add(one);
		content.add(two);
		content.add(three);
		content.add(four);
		content.add(five);	
	}
}
