Seguidores

MIS WEBS



martes, 20 de febrero de 2018

GridLayout en java


GridLayout lo podríamos traducir como diseño cuadricula  y 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