Java – LayoutManager – GridBagLayout


/**
 * GridBagLayoutDemo.java
 * 
 * Ejemplo de GridBagLayout.
 */

import javax.swing.JFrame;
import javax.swing.JButton;
import java.awt.Container;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;

/**
 * Clase que extiende de JFrame para heredar toda su funcionalidad.
 *
 * @author Dark[byte]
 */
public class GridBagLayoutDemo extends JFrame {

    /**
     * Constructor de la clase.
     * 
     * Construimos la GUI de nuestro programa, la configuramos, la centramos
     * en pantalla y la hacemos visible.
     */
    public GridBagLayoutDemo() {
        super("GridBagLayout Demo");

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        //tomamos el panel de contenido principal y le insertamos un GridBagLayout
        Container contenedor = getContentPane();
        contenedor.setLayout(new GridBagLayout());

        //creamos siete botones
        JButton boton1 = new JButton("Boton 1");
        JButton boton2 = new JButton("Boton 2");
        JButton boton3 = new JButton("Boton 3");
        JButton boton4 = new JButton("Boton 4");
        JButton boton5 = new JButton("Boton 5");
        JButton boton6 = new JButton("Boton 6");
        JButton boton7 = new JButton("Boton 7");

        //establecemos posición para el boton1
        GridBagConstraints cgb1 = new GridBagConstraints();
        cgb1.fill = GridBagConstraints.HORIZONTAL;
        cgb1.weightx = 1.0;
        cgb1.gridx = 0;
        cgb1.gridy = 3;

        //establecemos posición para el boton2
        GridBagConstraints cgb2 = new GridBagConstraints();
        cgb2.fill = GridBagConstraints.HORIZONTAL;
        cgb2.weightx = 1.0;
        cgb2.gridx = 1;
        cgb2.gridy = 3;

        //establecemos posición para el boton3
        GridBagConstraints cgb3 = new GridBagConstraints();
        cgb3.fill = GridBagConstraints.HORIZONTAL;
        cgb3.weightx = 1.0;
        cgb3.gridx = 2;
        cgb3.gridy = 3;

        //establecemos posición para el boton4
        GridBagConstraints cgb4 = new GridBagConstraints();
        cgb4.fill = GridBagConstraints.HORIZONTAL;
        cgb4.weightx = 1.0;
        cgb4.gridx = 3;
        cgb4.gridy = 3;

        //establecemos posición para el boton5
        GridBagConstraints cgb5 = new GridBagConstraints();
        cgb5.fill = GridBagConstraints.HORIZONTAL;
        cgb5.weightx = 1.0;
        cgb5.gridx = 4;
        cgb5.gridy = 3;

        //establecemos posición para el boton6
        GridBagConstraints cgb6 = new GridBagConstraints();
        cgb6.fill = GridBagConstraints.HORIZONTAL;
        cgb6.weightx = 1.0;
        cgb6.gridwidth = 3;
        cgb6.gridx = 1;
        cgb6.gridy = 2;

        //establecemos posición para el boton7
        GridBagConstraints cgb7 = new GridBagConstraints();
        cgb7.fill = GridBagConstraints.HORIZONTAL;
        cgb7.weightx = 1.0;
        cgb7.gridx = 2;
        cgb7.gridy = 0;

        //insertamos los botones con sus correspondientes posiciones en el panel de contenido principal
        contenedor.add(boton1, cgb1);
        contenedor.add(boton2, cgb2);
        contenedor.add(boton3, cgb3);
        contenedor.add(boton4, cgb4);
        contenedor.add(boton5, cgb5);
        contenedor.add(boton6, cgb6);
        contenedor.add(boton7, cgb7);
    
        pack();
        setLocationRelativeTo(null);
        setVisible(true);
    }

    /**
     * Punto de entrada del programa.
     *
     * Instanciamos esta clase para su construcción.
     *
     * @param args argumentos de la línea de comandos.
     */
    public static void main(String[] args) {
        new GridBagLayoutDemo();
    }
}

, , , ,

  1. Deja un comentario

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

w

Conectando a %s

A %d blogueros les gusta esto: