Introducción a SpringLayout en Java

En este artículo, aprenderemos sobre uno de los administradores de diseño más flexibles de Java, que también hereda varias características de otros administradores de diseño. En AWT (Abstract Window Toolkit), una clase SpringLayout es responsable de colocar a los niños en su contenedor vinculado, según el conjunto de restricciones de diseño.

Antes de comprender SpringLayout, echemos un vistazo a Spring Framework.

Simplemente, Spring Framework es una solución todo en uno para varios obstáculos. Para desarrollar aplicaciones empresariales, Spring Framework utiliza numerosos métodos como la inyección de dependencia (DI), la programación orientada a aspectos (AOP) y el simple objeto Java antiguo (POJO). Spring es un marco ligero de código abierto que permite a los desarrolladores de Java crear aplicaciones empresariales confiables, escalables y simples. Lanzado en 2004, Spring ha tenido cambios y revisiones importantes y significativas durante el período y según la necesidad.

Ahora, SpringLayout, como se describió anteriormente, es un Administrador de diseño muy flexible que hereda las características de varios otros administradores de diseño, se agregó en JDK versión 1.4. Para ampliar, un administrador de diseño es un objeto java, que implementa la interfaz LayoutManager y es responsable de decidir la posición y el tamaño. Spring Layout simplemente define la relación entre los bordes de los componentes y, a diferencia de otros administradores de diseño, SpringLayout no establece automáticamente la ubicación de ninguno de sus componentes. Dicho esto, SpringLayout admite el contrato LayoutManager2 con precisión. SpringLayout también proporciona algunas soluciones para resolver problemas que no pueden resolverse con la intervención de las cajas.

Constructor de SpringLayout en Java

En pocas palabras, un Java Constructor es un bloque de código de programa que inicializa un objeto y tiene el mismo nombre que una clase. Hay varios tipos de constructores en Java. Podemos sobrecargar un constructor con el fin de crear objetos de varias maneras, y para un compilador, un constructor se distingue en función del número, los tipos y el orden de los parámetros pasados.

SpringLayout () público es un simple constructor de Java que básicamente construye un nuevo SpringLayout.

Cada clase individual en Java Programming Language tiene un constructor, si no se crea, Java llama implícitamente a un constructor predeterminado con valores establecidos en cero.

Métodos de SpringLayout en Java

Básicamente, un método java es una colección de instrucciones de programa, similar al constructor mencionado anteriormente, con un nombre especificado y se puede invocar / invocar en cualquier lugar y en cualquier momento en el código. Un método puede verse como un subprograma. A diferencia de un constructor, un método devuelve un valor.

Ahora, para avanzar, la clase SpringLayout proporciona una amplia gama de métodos, a continuación se muestran los pocos métodos con detalles.

1. void addLayoutComponent (componente com, restricciones de objeto): Aquí tenemos un tipo de modificador vacío, y un método llamado addLayoutComponent, que toma dos argumentos, como cadena y componente.

2. void layoutContainer (Contenedor principal): el mismo modificador que el anterior, con el nombre de layoutContainer y aquí el principal es el contenedor que debe distribuirse.

3. Dimension preferredLayoutSize (Contenedor principal): Aquí tenemos la clase Dimension, que resume la altura y el ancho de un componente en un solo objeto. Y el padre es el contenedor que se colocará.

4. Dimension minimalLayoutSize (Contenedor padre): con la misma clase Dimension, minimumLayoutSize simplemente calcula las dimensiones de tamaño mínimo para un contenedor, el padre es el contenedor a distribuir. SpringLayout también proporciona maximumLayoutSize, con la clase Dimension, que devuelve el tamaño máximo de dimensión.

5. void removeLayoutComponent (Componente componente): el mismo modificador que se mencionó anteriormente, con el nombre del componente pasado como parámetro. Aquí, removeLayoutComponent simplemente elimina el componente mencionado en el parámetro, del diseño.

6. Spring getConstraint (String edgeName, Component component): getConstraint toma dos parámetros, uno es edgename que debe ser uno de SpringLayout.EAST, SpringLayout.WEST, SpringLayout.NORTH, SpringLayout.SOUTH, SpringLayout.VERTICAL_CENTER, SpringLayout.HORIZONTAL_CENTER_ SpringLayout.BASELINE y el nombre del componente cuyo borde de resorte deseamos.

7. void putConstraint (Str e1, Comp c1, int pad, Str e2, Comp c2): este método toma un total de cinco parámetros. Dos cuerdas, dos componentes y un resorte. putConstraint simplemente conecta el borde e1 del componente c1 con el borde e2 del componente c2, junto con una distancia especificada entre los bordes.

Además de los métodos mencionados anteriormente, SpringLayout proporciona una amplia gama de métodos para diversas operaciones, getLayoutAlignmentX y getLayoutAlignmentY devuelve 0.5f y es de tipo flotante.

Programa Java simple que demuestra SpringLayout en Java

Ahora que hemos entendido todo el pF SpringLayout junto con su clase y métodos, escribamos un programa simple para demostrar un diseño de muestra. Tendremos una sola etiqueta básica, un cuadro de texto y un título.

A continuación se muestra un programa de muestra para demostrar el funcionamiento de una clase SpringLayout.

Código:

import java.awt.Component;
import java.awt.Container;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.SpringLayout;
public class SpringSample (
public static void main(String args()) (
JFrame Sampleframe = new JFrame("Sample SL");
Sampleframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container sampleCP = Sampleframe.getContentPane();
SpringLayout SampleSL = new SpringLayout();
sampleCP.setLayout(SampleSL);
Component left = new JLabel("Sample Label");
Component right = new JTextField(15);
sampleCP.add(left);
sampleCP.add(right);
SampleSL.putConstraint(SpringLayout.NORTH, right, 27, SpringLayout.NORTH, sampleCP);
SampleSL.putConstraint(SpringLayout.NORTH, left, 27, SpringLayout.NORTH, sampleCP);
SampleSL.putConstraint(SpringLayout.WEST, left, 12, SpringLayout.WEST, sampleCP);
SampleSL.putConstraint(SpringLayout.WEST, right, 22, SpringLayout.EAST, left);
Sampleframe.setSize(450, 110);
Sampleframe.setVisible(true);
)
)

Guarde el código anterior en un archivo con extensión .java. Compile el código de Java con javac filename.java y luego ejecute el archivo de clase como una clase de Java. Al ejecutar el código, tendrá una salida simple con un diseño específico, una sola etiqueta y un cuadro de texto. Consulte la siguiente captura de pantalla para una mejor comprensión.

Salida:

Interpretación del código: Inicializamos con la importación de los paquetes requeridos. Llamamos a JLabel, JTextField y SpringLayout desde javax.swing y dos paquetes de Java Abstract Window Toolkit. Definimos una clase y el método principal dentro. Luego definimos un marco con "SpringLayout Sample" como título. Luego agregamos una etiqueta como en JLabel ("Lable1"), donde Label1 es el título de la etiqueta y un cuadro de texto como JTextField (15) con 15 como acuerdo para especificar el tamaño del cuadro de texto. Más tarde, definimos SpringLayout en función de todas las direcciones, junto con izquierda y derecha con contentPane. Finalmente, establecemos el tamaño del cuadro con setSize (300, 100) y la visibilidad en verdadero. Y ahora tenemos un SpringLayout simple con una sola etiqueta y un cuadro de texto.

Conclusión

SpringLayout es una clase de Java que establece los elementos secundarios de su contenedor relacionado, según el conjunto de restricciones. El objeto que representa estas restricciones tiene un valor mínimo, máximo, preferido y actual. Entendimos la clase SpringLayout, su constructor y métodos y las ventajas de SpringLayout sobre otros gestores de diseño.

Artículos recomendados

Esta es una guía de SpringLayout en Java. Aquí discutimos el constructor y los métodos de SpringLayout en Java junto con su interpretación del código. También puede consultar los siguientes artículos para obtener más información:

  1. BorderLayout en Java
  2. CardLayout en Java
  3. Cuadrícula en Java
  4. BoxLayout en Java
  5. JFrame en Java
  6. JLabel en Java
  7. Diseño HTML
  8. Matrices en programación Java