AWT de Java | Clase BorderLayoutBorderLayout Class

BorderLayout es el diseño predeterminado para los objetos de la ventana, como JFrame, JWindow, JDialog, JInternalFrame, etc. BorderLayout organiza los componentes en las cinco regiones. Los cuatro lados se denominan norte, sur, este y oeste. La parte media se llama el centro. Cada región puede contener sólo un componente y se identifica mediante una constante correspondiente como NORTE , SUR , ESTE , OESTE y CENTRO

Constructores: 

  1. BorderLayout(): construirá un nuevo diseño de borde sin espacios entre los componentes.
  2. BorderLayout(int, int): Construirá un diseño de borde con los espacios especificados entre los componentes.

Métodos comúnmente utilizados:  

  1. toString() : Devuelve una string que es la representación del estado del diseño del borde.
  2. getLayoutAlignmentX(Container parent) : Devuelve la alineación del diseño a lo largo del eje X.
  3. getLayoutAlignmentY(Container parent) : devolverá la alineación del diseño a lo largo del eje Y.
  4. removeLayoutComponent(Component comp) : este método se utiliza para eliminar el componente especificado del diseño del borde.
  5. getVgap() : Devuelve el espacio vertical entre los componentes.
  6. getHgap() : Devuelve el espacio horizontal entre los componentes.
  7. setHgap(int hgap) : Se utiliza para establecer el espacio horizontal entre los componentes.
  8. setVgap(int vgap) : Se utiliza para establecer el espacio vertical entre los componentes.

A continuación, los programas ilustrarán la clase BorderLayout: 

  • Programa 1: El siguiente programa crea componentes JButton en un JFrame , cuya clase de instancia es » BorderLayoutDemo «. Creamos 5 JButton y luego los agregamos al JFrame usando el método add() . Estableceremos el tamaño y la visibilidad del marco utilizando los métodos setSize() y setVisible() respectivamente. El diseño se establece mediante el método setLayout() .

Java

// Java program to illustrate the BorderLayout
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
// class extends JFrame
class BoderLayoutDemo extends JFrame {
 
    BoderLayoutDemo()
    {
         
        // Creating Object of Jpanel class
        JPanel pa = new JPanel();
 
        // set the layout
        pa.setLayout(new BorderLayout());
 
        // add a new JButton with name "wel" and it is
        // lie top of the container
        pa.add(new JButton("WelCome"), BorderLayout.NORTH);
 
        // add a new JButton with name "come" and it is
        // lie button of the container
        pa.add(new JButton("Geeks"), BorderLayout.SOUTH);
 
        // add a new JButton with name "Layout" and it is
        // lie left of the container
        pa.add(new JButton("Layout"), BorderLayout.EAST);
 
        // add a new JButton with name "Border" and it is
        // lie right of the container
        pa.add(new JButton("Border"), BorderLayout.WEST);
 
        // add a new JButton with name "hello everybody" and it is
        // lie center of the container
        pa.add(new JButton("GeeksforGeeks"), BorderLayout.CENTER);
 
        // add the pa object which refer to the Jpanel
        add(pa);
 
        // Function to close the operation of JFrame.
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 
        // Function to set size of JFrame.
        setSize(300, 300);
 
        // Function to set visible status of JFrame.
        setVisible(true);
    }
}
 
class MainFrame {
 
    // Driver code
    public static void main(String[] args)
    {
         
        // calling the constructor
        new BoderLayoutDemo();
    }
}

Producción: 

  • Programa 2: Este programa mostrará cómo pasar los argumentos en BorderLayout. Establece el color de fondo usando el método setBackground() . Creamos 5 componentes JButton llamados “ btn1 ”, “ btn2 ”, “ btn3 ”, “ btn4 ”, “ btn5 ”, y luego los agregamos al JFrame usando el método add() . Establecemos el título, el tamaño y la visibilidad del marco usando los métodos setTitle() , setSize() y setVisible() respectivamente. El diseño se establece mediante el método setLayout() .

Java

// Java program to illustrate the BorderLayout
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.Frame;
import java.awt.Button;
import java.awt.Color;
  
// class extends JFrame
public class BorderDemo extends JFrame {
  
    // Constructor of BorderDemo class.
    public BorderDemo()
    {
  
        // set the layout
        setLayout(new BorderLayout());
  
        // set the background
        setBackground(Color.red);
  
        // creates Button (btn1)
        Button btn1 = new Button("Geeks");
  
        // creates Button (btn2)
        Button btn2 = new Button("GFG");
  
        // creates Button (btn3)
        Button btn3 = new Button("Sudo Placement");
  
        // creates Button (btn4)
        Button btn4 = new Button("GeeksforGeeks");
  
        // creates Button (btn5)
        Button btn5 = new Button("Java");
  
        // Adding JButton "btn1" on JFrame.
        add(btn1, "North");
  
        // Adding JButton "btn2" on JFrame.
        add(btn2, "South");
  
        // Adding JButton "btn3" on JFrame.
        add(btn3, "East");
  
        // Adding JButton "btn4" on JFrame.
        add(btn4, "West");
  
        // Adding JButton "btn5" on JFrame.
        add(btn5, "Center");
  
        // function to set the title
        setTitle("Learning a Border Layout");
  
        // Function to set size of JFrame.
        setSize(350, 300);
  
        // Function to set visible status of JFrame
        setVisible(true);
    }
  
    // Main Method
    public static void main(String args[])
    {
  
        // calling the constructor
        new BorderDemo();
    }
}

Producción:

Nota: Es posible que los programas anteriores no se ejecuten en un IDE en línea. Utilice un compilador fuera de línea.

Referencia: https://docs.oracle.com/javase/7/docs/api/java/awt/BorderLayout.html
 

Publicación traducida automáticamente

Artículo escrito por Shivi_Aggarwal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *