FlowLayout
Ejemplo con FlowLayout[edit]
Un Layout simple de usar el el FlowLayout. Coloca todos los componentes que le añadimos alineados de izquierda a derecha, haciendo que cada uno ocupe lo que necesita.
Si hay hueco de sobra en horizontal, los componentes apareceran centrados. Si falta hueco, los componentes se partirán automáticamente en varias filas.
El siguiente código de ejemplo crea una ventana con varios componentes en un FlowLayout
import java.awt.FlowLayout; import javax.swing.JButton; import javax.swing.JCheckBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextField; import javax.swing.WindowConstants; public class PruebaFlowLayout { public static void main (String [] args) { JFrame v = new JFrame(); // Se pone el FlowLayout en la ventana v.getContentPane().setLayout(new FlowLayout()); // Se instancian los componentes JButton boton = new JButton("boton"); JTextField textField = new JTextField(10); JCheckBox checkBox = new JCheckBox("check box"); JLabel etiqueta = new JLabel("Etiqueta"); // Se añaden los componentes a la ventana v.getContentPane().add(boton); v.getContentPane().add(textField); v.getContentPane().add(checkBox); v.getContentPane().add(etiqueta); // Se muestra la ventana v.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); // pack() hace que la ventana coja el tamaño necesario para mostrar // los componentes que hay en ella. v.pack(); v.setVisible(true); } }
Puedes jugar a estirar y encoger la ventana para ver su comportamiento.
En el constructor de FlowLayout se pueden poner cosas como si se quiere que los componentes estén centrados (por defecto), pegados al lado izquierdo o al lado derecho. También es posible indicar la separación en pixels que se quiere entre componentes.
Puedes reemplazar el new FlowLayout() del código anterior por este
new FlowLayout(FlowLayout.RIGHT,40,40)
y verás que ahora los componentes están más separados y se pegan al lado derecho.