Introduction à SpringLayout en Java

Dans cet article, nous découvrirons l'un des gestionnaires de disposition les plus flexibles de Java, qui hérite également de diverses fonctionnalités d'autres gestionnaires de disposition. Dans AWT (Abstract Window Toolkit), une classe SpringLayout est chargée de disposer les enfants dans son conteneur lié, en fonction de l'ensemble des restrictions de disposition.

Avant de comprendre SpringLayout, jetons un œil à Spring Framework.

Simplement, Spring Framework est une solution tout-en-un pour divers obstacles. Pour développer des applications d'entreprise, Spring Framework utilise de nombreuses méthodes telles que l'injection de dépendance (DI), la programmation orientée aspect (AOP) et le vieil objet java (POJO). Spring est un cadre léger open source qui permet aux développeurs Java de créer des applications d'entreprise fiables, évolutives et simples. Sorti en 2004, Spring a subi des changements et révisions majeurs et importants au cours de la période et selon les besoins.

Maintenant, SpringLayout, comme décrit précédemment, est un gestionnaire de disposition très flexible qui hérite des fonctionnalités de divers autres gestionnaires de disposition, il a été ajouté dans JDK version 1.4. Pour étendre, un gestionnaire de disposition est un objet java, qui implémente l'interface LayoutManager et est chargé de décider de la position et de la taille. Spring Layout définit simplement la relation entre les bords des composants et, contrairement aux autres gestionnaires de disposition, SpringLayout ne définit automatiquement l'emplacement d'aucun de ses composants. Cela étant dit, SpringLayout prend en charge le contrat LayoutManager2 avec précision. SpringLayout fournit également quelques solutions pour résoudre des problèmes qui ne peuvent pas être résolus par l'intervention des boîtes.

Constructeur de SpringLayout en Java

En termes simples, un constructeur Java est un bloc de code de programme qui initialise un objet et porte le même nom qu'une classe. Il existe différents types de constructeurs en java. Nous pouvons surcharger un constructeur dans le but de créer des objets de différentes manières, et pour un compilateur, un constructeur est distingué en fonction du nombre, des types et de l'ordre des paramètres passés.

public SpringLayout () est un simple constructeur Java qui construit essentiellement un nouveau SpringLayout.

Chaque classe du langage de programmation Java a un constructeur, s'il n'est pas créé, java appelle implicitement un constructeur par défaut avec des valeurs définies sur zéro.

Méthodes de SpringLayout en Java

Fondamentalement, une méthode java est une collection d'instructions de programme, similaire au constructeur susmentionné, avec un nom spécifié et peut être appelée / invoquée n'importe où et n'importe quand dans le code. Une méthode peut être considérée comme un sous-programme. Contrairement à un constructeur, une méthode renvoie une valeur.

Maintenant, pour aller plus loin, la classe SpringLayout fournit un large éventail de méthodes, voici les quelques méthodes avec des détails.

1. void addLayoutComponent (Component com, contraintes d'objet): Nous avons ici un type de modificateur void et une méthode nommée addLayoutComponent, qui prend deux arguments, comme chaîne et composant.

2. void layoutContainer (parent du conteneur): le même modificateur que ci-dessus, avec un nom comme layoutContainer et ici parent est le conteneur qui doit être disposé.

3. Dimension PreferredLayoutSize (parent du conteneur): nous avons ici la classe Dimension, qui résume la hauteur et la largeur d'un composant dans un seul objet. Et le parent est le conteneur à aménager.

4. Dimension minimumLayoutSize (parent du conteneur): Avec la même classe Dimension, minimumLayoutSize calcule simplement les dimensions de taille minimale pour un conteneur, le parent est le conteneur à disposer. SpringLayout fournit également maximumLayoutSize, avec la classe Dimension, qui renvoie la taille de dimension maximale.

5. void removeLayoutComponent (Component component): même modificateur que mentionné précédemment, avec le nom du composant passé en paramètre. Ici, removeLayoutComponent supprime simplement le composant mentionné dans le paramètre de la disposition.

6. Spring getConstraint (String edgeName, Component component): getConstraint prend deux paramètres, l'un est edgename qui doit être l'un des SpringLayout.EAST, SpringLayout.WEST, SpringLayout.NORTH, SpringLayout.SOUTH, SpringLayout.VERTICAL_CENTER, SpringLayout.HORIZONTAL_CENTER ou SpringLayout.BASELINE et le nom du composant dont le bord ressort nous souhaitons.

7. void putConstraint (Str e1, Comp c1, int pad, Str e2, Comp c2): Cette méthode prend un total de cinq paramètres. Deux cordes, deux composants et un ressort. putConstraint connecte simplement l'arête e1 du composant c1 avec l'arête e2 du composant c2, ainsi qu'une distance spécifiée entre les arêtes.

Outre les méthodes mentionnées ci-dessus, SpringLayout fournit un large éventail de méthodes pour diverses opérations, getLayoutAlignmentX et getLayoutAlignmentY renvoie 0, 5f et est un type flottant.

Programme Java simple démontrant SpringLayout en Java

Maintenant que nous avons compris l'ensemble de pf SpringLayout avec sa classe et ses méthodes, écrivons un programme simple pour illustrer un exemple de disposition. Nous aurons une seule étiquette de base, une zone de texte et un titre.

Voici un exemple de programme pour démontrer le fonctionnement d'une classe SpringLayout.

Code:

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);
)
)

Enregistrez le code ci-dessus dans un fichier avec l'extension .java. Compilez le code java avec javac filename.java, puis exécutez le fichier de classe en tant que classe java. Lors de l'exécution du code, vous aurez la sortie simple avec une mise en page spécifiée, une seule étiquette et une zone de texte. Reportez-vous à la capture d'écran ci-dessous pour une meilleure compréhension.

Production:

Interprétation du code: Nous avons initialisé avec l'importation des packages requis. Nous avons appelé JLabel, JTextField et SpringLayout de javax.swing et deux packages de Java Abstract Window Toolkit. Nous avons défini une classe et la méthode principale à l'intérieur. Ensuite, nous avons défini un cadre avec "SpringLayout Sample" comme titre. Nous avons ensuite ajouté une étiquette comme dans JLabel ("Lable1"), où Label1 est le titre de l'étiquette et une zone de texte comme JTextField (15) avec 15 comme accord pour spécifier la taille de la zone de texte. Plus tard, nous avons défini SpringLayout en fonction de toutes les directions, ainsi que de gauche et de droite avec contentPane. Enfin, nous avons défini la taille du cadre avec setSize (300, 100) et la visibilité sur true. Et maintenant, nous avons un simple SpringLayout avec une seule étiquette et une zone de texte.

Conclusion

SpringLayout est une classe java qui définit les enfants de son conteneur associé, conformément à l'ensemble de restrictions. L'objet qui représente ces restrictions a une valeur minimale, maximale, préférée et actuelle. Nous avons compris la classe SpringLayout, son constructeur et ses méthodes et les avantages de SpringLayout par rapport aux autres Layout Managers.

Articles recommandés

Ceci est un guide de SpringLayout en Java. Ici, nous discutons du constructeur et des méthodes de SpringLayout en java avec son interprétation de code. Vous pouvez également consulter les articles suivants pour en savoir plus -

  1. BorderLayout en Java
  2. CardLayout en Java
  3. Gridlayout en Java
  4. BoxLayout en Java
  5. JFrame en Java
  6. JLabel en Java
  7. Disposition HTML
  8. Tableaux en programmation Java