Descripción general de Flowlayout en Java
Antes de profundizar en los detalles de FlowLayout en Java, revisemos algunos temas básicos necesarios para FlowLayout:
Java AWT : AWT es una API para construir aplicaciones GUI o basadas en ventanas.
Algunos de los conceptos básicos con respecto a la jerarquía de AWT son los siguientes:
1. Contenedor : Contenedor es una clase que contiene todos los componentes como botón, campo de texto, barra de título, barra de menú, etc.
2. Componentes : Los componentes son los objetos de la GUI, como botones, etiqueta, campo de texto, lista de verificación.
Hay algunas funciones básicas de componentes como:
- public void add (Componente c): agrega un componente en este componente.
- public void setSize (int width, int height): establece el ancho y la altura del componente.
- public void setLayout (LayoutManager m): define el administrador de diseño para el componente.
- public void setVisible (estado booleano): define la visibilidad del componente, por defecto es falso.
3. Panel : Panel es una clase de contenedor. Crea un espacio para una aplicación donde todos los componentes pueden encajar. Hereda la clase contenedor.
El panel no contiene barra de menú o barra de título, pero puede contener otros componentes como campo de texto, botones.
4. Frame : Frame es una clase contenedor. Contiene una barra de menú y una barra de título y también puede contener otros componentes.
5. Administrador de diseño : un administrador de diseño es un objeto que implementa la interfaz LayoutManager para determinar el tamaño y la posición de los componentes dentro del contenedor.
Hay muchos tipos de diseños disponibles, cada uno con sus propias capacidades y tareas específicas:
- FlowLayout.
- BorderLayout.
- Diseño de tarjeta.
- BoxLayout.
- Diseño de cuadrícula.
- GridBagLayout.
- GroupLayout.
- SpringLayout.
Definición de FlowLayout
- FlowLayout es uno de los gestores de diseño proporcionados por AWT que se utiliza en los applets para organizar los componentes de izquierda a derecha, como las palabras de un párrafo.
- Cuando no. De los componentes que aumentan el tamaño de la ventana, entonces, de forma predeterminada, Java permite que FlowLayout organice los componentes para que quepan en el panel de la ventana.
- FlowLayout es el diseño predeterminado proporcionado por el administrador de diseño. Cuando no selecciona ningún diseño, el diseño se configurará para que fluya.
- FlowLayout utiliza algunas configuraciones predeterminadas, como la alineación central con espacios de cinco píxeles entre los componentes horizontal y verticalmente.
La alineación está determinada por la propiedad "alinear". Y el campo de alineación es el siguiente:
- IZQUIERDA: alinea los componentes a la izquierda.
- DERECHA: alinea los componentes a la derecha.
- CENTRO: alinea los componentes al centro.
- LÍDER: estará en el borde delantero del contenedor, es decir, a la izquierda para la orientación de izquierda a derecha.
- TRAILING: estará en el borde posterior del contenedor, es decir, a la derecha de izquierda a derecha
Funciones comúnmente utilizadas de FlowLayout
- setAlignment (int align): establece la alineación respectiva al diseño del contenedor.
- getAlignment (): Obtiene la alineación del diseño del contenedor.
- addLayoutComponent (): Agrega el componente particular al diseño.
- setTitle (texto de cadena): establece el título del contenedor con el texto dado.
Constructores en FlowLayout
- FlowLayout (): construye una instancia de FlowLayout como alineada al centro y con un espacio de 5 píxeles entre los componentes.
- FlowLayout (int align): construye un FlowLayout con una alineación dada con un espacio de 5 píxeles entre los componentes.
- FlowLayout (int align, int horizontalGap, int verticalGap): construye un FlowLayout con una alineación dada y con un espacio horizontal y vertical dado entre los componentes.
- Este constructor se alineará por el campo de alineación especificado como DERECHO, IZQUIERDO o CENTRO y también ofrece la opción de agregar un espacio horizontal y un espacio vertical entre los componentes.
Ejemplo de diseño de flujo:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Layout extends JFrame
(
private JButton lb;
private JButton rb;
private JButton cb;
private FlowLayout layout;
private Container container;
public Layout()
(
super("the title");
layout = new FlowLayout();
container = getContentPane();
setLayout(layout); //left alignment
lb = new JButton("left");
add(lb);
lb.addActionListener(
new ActionListener()
(
public void actionPerformed(ActionEvent event)
(
layout.setAlignment(FlowLayout.LEFT);
layout.layoutContainer(container);
)
)
);
//right alignment
rb = new JButton("right");
add(rb);
rb.addActionListener(
new ActionListener()
(
public void actionPerformed(ActionEvent event)
(
layout.setAlignment(FlowLayout.RIGHT);
layout.layoutContainer(container);
)
)
);
//center alignment
cb = new JButton("center");
add(cb);
cb.addActionListener(
new ActionListener()(
public void actionPerformed(ActionEvent event)
(
layout.setAlignment(FlowLayout.CENTER);
layout.layoutContainer(container);
)
)
);
)
)
Método principal de Flowlayout en Java
import javax.swing.*;
public class Test
(
public static void main(String() args)
(
Layout l = new Layout();
l.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
l.setSize(300, 100);
l.setVisible(true);
)
)
Salida:
La explicación del código anterior.
- En el código anterior, habíamos declarado 3 botones con la ayuda de JButton como lb, rb y cb.
- Al crear la instancia de clase, necesitamos ver los botones para agregar los botones a un contenedor en el propio constructor de la clase.
- Extendemos la clase JFrame
- Con las funciones setLayout () estamos configurando el diseño como flowlayout.
- Para la alineación a la izquierda, cuando hacemos clic en el botón llamado "izquierda", los botones en el panel de la ventana deben estar alineados a la izquierda.
- Para que esto funcione, el botón particular se agrega en el panel de la ventana y en el evento de clic de ese botón, el diseño se establecerá en Izquierda.
- En el código anterior, setAlignment (FlowLayout.LEFT) establecerá la alineación del diseño del panel a la izquierda. FlowLayout.LEFT es el campo disponible para la alineación. Del mismo modo, FlowLayout.RIGHT, FlowLayout.CENTER, FlowLayout.TRAILING, FlowLayout.LEADING son algunos de los otros campos utilizados para establecer la alineación.
- Tenga en cuenta que estos campos de alineación alinearán todos los componentes a la izquierda, a la derecha o al centro.
- No depende del tamaño de su ventana. Ajustará y alineará sus componentes con la alineación especificada respetuosamente.
- Como lo hicimos para la alineación izquierda de manera similar, desarrollamos para la alineación central y derecha. Finalmente, desarrollamos Test Class para escribir el método principal para probar nuestro código Java FlowLayout.
- Al crear una instancia de la clase Layout en el método principal, establecemos el tamaño de la ventana y la visibilidad de los componentes en true.
Conclusión - Flowlayout en Java
Este tutorial le da la idea básica de por qué Java tiene FlowLayout y cuáles son sus funcionalidades. FlowLayout es el diseño predeterminado debido a su facilidad y precisión de alineación. Recuerde que cada concepto se vuelve aún más claro cuando codifica y lo practica. Deje que el error aparezca en su código, no dude en seguir codificando y comprender el concepto con precisión.
Artículos recomendados
Esta es una guía para Flowlayout en Java. Aquí discutimos los Constructores y las funciones comúnmente utilizadas de FlowLayout. También puede consultar el siguiente artículo para obtener más información:
- JPanel en Java
- Intercambio en Java
- Factorial en Java
- Ordenar en Java
- Guía completa para ordenar en C # con ejemplos
- Diseño HTML
- Función de clasificación en Python con ejemplos
- Guía completa de Factorial en C #