package javacodebook.gui.componentsinlayout;

import javax.swing.*;
import java.awt.*;

/**
 * @author Benjamin Rusch
 * 
 * Dieses Beispiel zeigt wie beim FlowLayout über setPreferedSize
 * die Größe der Komponenten geändert werden kann.
 */

public class FlowFrame  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 FlowFrame.  
 	*/	
	public FlowFrame(String title) {
		
		super(title);

	    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

	    content=this.getContentPane();
		content.setLayout(new FlowLayout());
		
		// Über setPreferredSize() wird die bevorzugte Größe 
		// der Komponente gesetzt. Je nach LayoutManager wird 
		// sie respektiert oder nicht. Im Fall vom FlowLayout 
		// werden sogar Breite und Höhe berücksichtigt.
		one.setPreferredSize(new Dimension(50,10));
		two.setPreferredSize(new Dimension(60,20));
		three.setPreferredSize(new Dimension(70,30));
		four.setPreferredSize(new Dimension(80,40));
		five.setPreferredSize(new Dimension(90,50));
		
		content.add(one);
		content.add(two);
		content.add(three);
		content.add(four);
		content.add(five);		
	}
}
