Seguidores

MIS WEBS



martes, 20 de febrero de 2018

GridLayout en java


GridLayout lo podríamos traducir como diseño cuadricula  distribuirá nuestro marco formando una cuadricula como la de una hoja de Excel.


Constructor:

GridLayout () constructor por defecto crea una columna por cada componente que tenga en una sola fila
GridLayout (int rows, int cols)  crea las filas y columnas que le indiquemos nosotros (rows = filas, cols = columnas).

GridLayout (int rows, int cols, int hgap, int vgap)  crea las filas y columnas que le indiquemos y da separación entre los objetos ( hgap = separcion horizontal,  vgap = separación vertical).


En el siguiente ejemplo vamos a crear dos laminas una en la que incluiremos los números y otra en la que ponderemos un cuadro de texto.


import java.awt.*;
import javax.swing.*;
public class otroEjemplodelayout {
                public static void main (String[] asgs) {
                        (new Marco123456789()).setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                        (new Marco123456789()).setVisible(true);              
                }
}
                class Panel extends JPanel{
                public Panel() {
                        setLayout(new GridLayout(5,3));//rows (filas), cols(columnas)
               
                        add(new JButton("1"));
                        add(new JButton("2"));
                        add(new JButton("3"));
                        add(new JButton("4"));
                        add(new JButton("5"));
                        add(new JButton("6"));
                        add(new JButton("7"));
                        add(new JButton("8"));
                        add(new JButton("9"));
                        add(new JButton("0"));
                        add(new JButton("+"));
                        add(new JButton("-"));
                        add(new JButton("/"));
                        add(new JButton("*"));
                }
        }
       
        class Consola extends JPanel{
                public Consola(){
               
                JTextField cuadro_texto =new JTextField ("0",15);
                cuadro_texto.setBackground(Color.magenta);
                cuadro_texto.setFont(new Font("Arial Black",Font.BOLD,25));
                add(cuadro_texto);
                       
                }
        }
               

class Marco123456789 extends JFrame{
        public Marco123456789() {
                setTitle("Practica");
                setBounds(300,100,500,500);
       
                Panel Panel_de_cuerpo =new Panel();
                Consola zona_calculo = new Consola();
                //combinamos las dos laminas en un frame
                add(zona_calculo, BorderLayout.NORTH);
                add(Panel_de_cuerpo, BorderLayout.CENTER);
       
               
        }

}



Obtendríamos el siguiente resultado:




No hay comentarios:

Publicar un comentario

Buscar este blog

Sandisk y Western Digital