Introduction à BorderLayout en Java

BorderLayout en Java ou le gestionnaire de disposition est un objet que chaque objet conteneur possède, qui contrôle sa disposition, c'est-à-dire la taille et la position des composants. En langage simple, ces gestionnaires de disposition sont utilisés pour organiser les composants d'une manière particulière ou spécifique. 'LayoutManager' peut être dit comme une interface implémentée par toutes ses classes. Certaines classes AWT et SWING ont été fournies en tant que gestionnaires de mise en page pour une utilisation générale. Certains d'entre eux sont énumérés ci-dessous:

  1. BorderLayout
  2. BoxLayout
  3. SpringLayout
  4. FlowLayout
  5. GroupLayout
  6. GridLayout, etc.

Avant de passer à BorderLayout, supposons de discuter de certains points.

Presque tout dans le monde informatique est organisé de manière hiérarchique soit pour un meilleur stockage, soit pour créer un système de récupération facile. Les gestionnaires de mise en page utilisés pour créer des interfaces graphiques à l'aide des classes AWT disponibles font partie d'un tel système hiérarchique. Il porte le nom de hiérarchie de confinement. Bien que cet article se concentre sur l'un des LayoutManager disponibles connus sous le nom de BorderLayout, nous devons avant tout savoir où se trouve BorderLayout dans cette hiérarchie. Notre arborescence qui traverse des cadres, des composants GUI, des conteneurs, etc. Commence par:

  1. Tout d'abord, un conteneur de niveau supérieur ou une classe de conteneur de niveau supérieur tel que JFrame, JApplet ou JDialog, qui agit en tant que «ROOT» de cette hiérarchie de confinement.
  2. Deuxièmement, pour qu'un composant apparaisse en tant que composant GUI à l'écran, il doit être inclus dans la hiérarchie de confinement.
  3. Troisièmement, un composant doit être ou sera contenu dans un seul conteneur.
  4. Quatrièmement, chaque conteneur de niveau supérieur aura un volet de contenu, en gros, chaque interface graphique visible (directement ou indirectement) est contenue dans ce volet de contenu.

Qu'est-ce que BorderLayout?

Une classe BorderLayout est l'une des classes du gestionnaire de disposition qui est considérée comme la disposition par défaut pour les objets fenêtre. Les objets de fenêtre tels que JFrame, JWindow, JDialog utilisent cette classe pour être affichés en tant que composants GUI. BorderLayout est utilisé pour mettre en page un conteneur, c'est-à-dire organiser et redimensionner ses composants. La disposition des bordures organise ces composants en cinq régions différentes. Sur cinq, quatre régions ou régions sont appelées nord, sud, est et ouest et la région centrale est appelée centre. Chaque région ne peut contenir qu'un seul composant. La disposition des bordures fournit une collection de constantes utilisées pour positionner les composants. Les régions discutées ici identifiées par une constante correspondante nommée NORD, SUD, EST, OUEST et la constante de la région centrale comme CENTRE. Nous utilisons ces constantes lors de l'ajout d'un composant à l'aide d'une disposition de bordure. Les constantes pour chaque région utilisée dans notre code sont répertoriées ci-dessous:

  • public static final int NORTH: constante de disposition nord en haut du conteneur.
  • public static final int SOUTH: Constante de disposition sud en bas du conteneur.
  • public static final int CENTER: Constante de disposition du centre au milieu du conteneur.
  • public static final int WEST: la constante de disposition ouest à droite du conteneur.
  • public static final int EAST: La constante de disposition Est à gauche du conteneur.

En plus des constantes énumérées ci-dessus, BorderLayout fournit également d'autres constantes de positionnement telles que PAGE_START, PAGE_END, etc.

Constructeurs BorderLayout

Les constructeurs BorderLayout sont utilisés pour créer de nouvelles dispositions de bordure avec des espaces ou sans espaces entre les composants. Le constructeur de la disposition des bordures utilise les paramètres d'espace et d'espace pour spécifier les espaces horizontaux et les espaces verticaux entre les composants. Les constructeurs de disposition des bordures sont décrits ci-dessous:

Nous en discuterons un par un avec leurs exemples.

1. BorderLayout ()

La classe BorderLayout est utilisée pour créer une disposition de bordure mais sans espaces entre les composants. Voici un exemple de code utilisant le constructeur BorderLayout (). Le programme suivant crée des composants dans un JFrame dont la classe d'instance est «border». Vous pouvez voir dans la capture d'écran ci-dessous (après le code), il y a cinq régions.

Notre code a créé cinq régions à l'aide de cinq JButton, puis celles-ci sont ajoutées à la mise en page ou JFrame à l'aide d'une méthode add (). La taille et la visibilité sont déterminées séparément pour le JFrame. La méthode setSize () est utilisée pour définir la taille du cadre et la méthode set accessibility () est utilisée pour définir la visibilité du cadre.

Code

//Java Program illustrating the BorderLayout
import java.awt.*;
import javax.swing.*;
public class border
(
JFrame JF;
border()
(
JF=new JFrame(); //JFrame object
//Lying at top, will be the button named 'North'
JButton b1=new JButton("NORTH");
//Lying at bottom, will be the button named 'South'
JButton b2=new JButton("SOUTH");
//Lying at left, will be the button named 'East'
JButton b3=new JButton("EAST");
//Lying at right, will be the button named 'West'
JButton b4=new JButton("WEST");
//In the center, will be the button named 'Center'
JButton b5=new JButton("CENTER");
//Adding our buttons
JF.add(b1, BorderLayout.NORTH);
JF.add(b2, BorderLayout.SOUTH);
JF.add(b3, BorderLayout.EAST);
JF.add(b4, BorderLayout.WEST);
JF.add(b5, BorderLayout.CENTER);
//Function to set size of the Frame
JF.setSize(300, 300);
//Function to set visible status of the frame
JF.setVisible(true);
)
//Driver Code
public static void main(String() args)
(
//Calling the constructor
new border();
)
)

Dans la capture d'écran ci-dessous, vous pouvez voir à quoi ressemble le code dans l'éditeur de texte. J'ai utilisé Eclipse comme éditeur de texte.

Lorsque le code s'exécute, la sortie suivante s'affiche.

Production:

2. BorderLayout (int hgap, int vgap)

BorderLayout (int hgap, int vgap) est également écrit car BorderLayout (int, int) est utilisé pour créer une disposition de bordure avec les espaces ou espaces horizontaux (hgap) et verticaux (vgap) donnés entre les éléments suivants.C'est un exemple de code utilisant BorderLayout ( int, int) constructeur. Le programme suivant crée des composants dans un JFrame dont la classe d'instance est «border» de la même manière que ci-dessus mais avec des espaces verticaux et horizontaux. Vous pouvez voir dans la capture d'écran ci-dessous (après le code).

Notre code a créé cinq régions avec des écarts entre elles en utilisant les paramètres vgap et hgap dans BorderLayout (). La taille et la visibilité sont à nouveau déterminées séparément pour le JFrame. La méthode setSize () est utilisée pour définir la taille du cadre et la méthode set accessibility () est utilisée pour définir la visibilité du cadre.

Vous pouvez voir le code pour générer un cadre à l'aide de BorderLayout avec les paramètres vgap et hgap, créer des espaces ou des espaces entre les régions est illustré ci-dessous:

Code

//Java Program illustrating the BorderLayout with SPACES between COMPONENTS
import java.awt.*;
import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.Color;
public class borderlayout_spaces extends Frame
(
public borderlayout_spaces(String title)
(
super(title);
setLayout(new BorderLayout(20, 30));
//setBackground(Color.RED);
//Lying at top, will be the button named 'North'
JButton b1=new JButton("North");
add(b1, BorderLayout.NORTH);
//Lying at left, will be the button named 'East'
JButton b2=new JButton("EAST");
add(b2, BorderLayout.EAST);
//In the center, will be the button named 'Center'
JButton b3=new JButton("CENTER");
add(b3, BorderLayout.CENTER);
//Lying at right, will be the button named 'West'
JButton b4=new JButton("WEST");
add(b4, BorderLayout.WEST);
//Lying at bottom, will be the button named 'South'
JButton b5=new JButton("SOUTH");
add(b5, BorderLayout.SOUTH);
)
//Driver Code
public static void main(String() args)
(
//Calling the constructor
borderlayout_spaces screen =
new borderlayout_spaces("Border Layout");
screen.setSize(300, 300); //Function to set size of the Frame
screen.setVisible(true); //Function to set visible status of
the frame
)
)

Dans la capture d'écran ci-dessous, vous pouvez voir à quoi ressemble le code dans l'éditeur de texte.

La ligne de code, "setLayout (nouveau BorderLayout (20, 30));" définit la sortie comme l'image ci-dessous. Ici 20 est l'espace horizontal et 30 représente l'espace vertical.

Lorsque le code s'exécute, la sortie suivante s'affiche.

Production:

Vous pouvez également essayer d'autres propriétés, par exemple, définir la couleur d'arrière-plan. Dans le code ci-dessus, si vous voyez une ligne de code commentée comme "setBackground (Color.RED);" si vous essayez ce code avec cette ligne sans commentaire, votre cadre apparaîtra comme ci-dessous:

Il existe d'autres méthodes couramment utilisées à côté de la disposition des bordures, telles que:

  1. toString (): renvoie une chaîne qui est une représentation de l'état de la disposition des bordures.
  2. getVgap (): Retourne l'espace vertical entre le composant.
  3. getHgap (): Retourne l'espace horizontal entre le composant.
  4. setVgap (int vgap): Ceci est utilisé pour FIXER l'écart vertical entre le composant.
  5. setHgap (int hgap): Ceci est utilisé pour RÉGLER l'écart horizontal entre les composants, etc.

Cet article a discuté de certains des puissants LayoutManagers utilisés pour disposer vos cadres de fenêtres et vos interfaces graphiques. L'article a également couvert l'écriture de dispositions de code à l'aide de deux constructeurs différents appelés classes java.awt.BorderLayout et java.awt.BorderLayout (int, int) à la main, ce qui aurait pu être difficile. Mais vous devriez essayer de vous en débarrasser. Sinon, vous pouvez essayer d'utiliser le gestionnaire de disposition java.awt.GroupLayout. Vous pouvez également utiliser un outil de construction avec votre gestionnaire de disposition, par exemple, NetBeans IDE, qui est un excellent outil pour créer votre interface graphique.

Articles recommandés

Ceci est un guide de BorderLayout en Java. Nous discutons ici d'une introduction à BorderLayout en Java, les constructeurs BorderLayout avec des codes et des sorties. Vous pouvez également consulter nos autres articles connexes pour en savoir plus-

  1. Disposition en Java
  2. Disposition de la grille en Java
  3. Variables en Java
  4. Copier le constructeur en Java
  5. Disposition HTML