Introduction à JLabel Java Swing

JLabel fait partie des nombreuses classes Java du package Java Swing. La classe JLabel du package swing est capable d'afficher un texte ou une image ou les deux. Comme pour les autres classes du package Swing, l'étiquette et le contenu de l'étiquette affichés par JLabel sont alignés à l'aide d'alignements horizontaux et verticaux. Le programmeur peut spécifier où le contenu de l'étiquette sera affiché sur la zone d'affichage de l'étiquette en définissant les alignements.

Par défaut, le texte ou plus précisément, le texte de l'étiquette est aligné verticalement et s'affiche au centre de leur zone d'affichage tandis qu'une image ou une image affichée est centrée horizontalement par défaut.

Nous pouvons également facilement spécifier la position et afficher le texte par rapport à notre image. Le texte est normalement affiché à la fin de notre image, avec le texte aligné verticalement, comme discuté ci-dessus.

C'est le plus simple des composants GUI de Swing. Le composant JLabel du package Swing est presque identique à une étiquette du package AWT, la différence est que JLabel ne contient pas de texte modifiable par l'utilisateur qui est du texte en lecture seule. JLabel est simplement utilisé pour afficher un message texte ou une icône / image ou les deux à l'écran, mais il n'est pas en mesure de réagir aux événements de l'utilisateur, par exemple le focus de la souris ou le focus des mots clés.

Nous pouvons simplement utiliser JLabel en créant et en utilisant une instance pour cette classe. Voici un exemple de capture d'écran après avoir créé un objet pour la classe JLabel et imprimé notre étiquette, 'A Basic Label'.

Ici, nous avons créé un objet de la classe JLabel appelé 'label' avec un texte d'étiquette 'A Basic Label' qui lui est donné. Vous pouvez simplement l'écrire comme:

JLabel label1 = new JLabel("A basic label."); OR
JLabel label1;
label1 = new JLabel("A basic label.");

Il sera affiché comme:

Objectif de JLabel en Java

JLabel ne réagit pas aux événements d'entrée effectués par l'utilisateur comme le focus souris ou le focus clavier. Il s'agit simplement d'un texte ou d'une image non modifiable ou d'une icône ou des deux. JLabel est généralement utilisé avec les composants qui n'ont pas leur propre capacité à expliquer ou à démontrer leur objectif. L'objet JLabel créé fournira à notre utilisateur, les instructions textuelles ou des informations sur notre interface graphique.

Par exemple, une zone de texte pour entrer un nom ou un mot de passe, etc., nécessitera une étiquette pour informer l'utilisateur de la zone de texte.

Trouvez cet exemple expliqué ci-dessous avec des captures d'écran.

Sans l'utilisation de JLabel, les zones de texte sembleront perdues pour un utilisateur car elles ne se disent pas ce que l'utilisateur est censé entrer dans le champ de texte. Prenons l'exemple suivant, nous avons ajouté un champ de texte sans étiquette.

Remarque, vous pouvez simplement ajouter un champ de texte à l'aide d'une simple ligne de code suivante.

JTextField textEmail = new JTextField(20); //creating object for text field
textEmail.setBounds(50, 50, 150, 20); //setting the bounds for the text box

Mais si ce champ de texte est utilisé en combinaison avec JLabel, il apparaîtra comme ci-dessous et aura plus de sens, n'est-ce pas?

Voici un autre exemple où nous avons utilisé notre champ de texte précédent avec lequel nous avons ajouté une simple chaîne d'une ligne `` Entrez l'adresse e-mail '', suggérant à notre utilisateur qu'il doit ajouter son adresse e-mail dans la zone de texte donnée.

Comme indiqué ci-dessus, nous pouvons simplement ajouter un champ de texte. Maintenant, nous allons également ajouter une étiquette comme indiqué ci-dessous:

textLabel = new JLabel("Enter e-mail address:");
JTextField textEmail = new JTextField(20);
textLabel.setBounds(20, 50, 150, 20);
textEmail.setBounds(180, 50, 150, 20);

C'était un exemple simple que nous avons créé. C'était un programme simple affichant un champ de texte et une étiquette avec. Nous pouvons également ajouter une icône en utilisant une autre méthode couramment utilisée avec JLabel, connue sous le nom de méthode setIconTextGap. Cette méthode aide le programmeur à spécifier combien de pixels notre texte et notre image doivent être affichés séparément.

Constructeurs de JLabel

La classe Java JLabel possède plusieurs constructeurs qui peuvent être utilisés pour créer notre étiquette avec différentes caractéristiques.

  1. JLabel (): ce constructeur crée une étiquette vide sans texte. Cette instance de la classe crée l'étiquette sans image et une chaîne ou du texte vide pour son titre. Le texte peut être défini ultérieurement.
  2. JLabel (icône d'image): ce constructeur crée une étiquette avec uniquement une icône ou une image spécifiée. L'icône ou le fichier image peut être utilisé à partir de votre propre système de fichiers.
  3. JLabel (String Text): Cette instance crée une étiquette avec un texte spécifique tout en déclarant notre constructeur. Outre les constructeurs de base mentionnés ci-dessus, nous avons également les éléments suivants qui peuvent être utilisés.
  4. JLabel (icône d'image, int horizontalAlignment): cette instance de constructeur est utilisée pour créer une image ou une icône spécifiée avec l'alignement horizontal.
  5. JLabel (String text, int horizontalAlignment): cette instance de constructeur est utilisée pour créer un texte spécifié avec l'alignement horizontal.
  6. JLabel (texte de chaîne, icône d'icône, int horizontalAlignment): cette instance de constructeur est utilisée pour créer une image ou une icône spécifiée, du texte ainsi que son alignement comme 'horizontal'.

Exemples de JLabel

Voici un exemple de création d'un programme simple de «formulaire de connexion» avec deux étiquettes ajoutées pour deux champs de texte affichant leur nature. Nous avons également ajouté un bouton avec sa propre étiquette affichant le texte comme «Connexion».

import javax.swing.*;
class Java_JLabel_SignIn
(
public static void main(String args())
(
//Adding our Frame
JFrame f= new JFrame("Label Demo");
//Creating objects for our Labels
JLabel label1, label2;
//Creating object for Sign In button
JButton Button1;
//Creating object for our text boxes
JTextField TextBox1, TextBox2;
//Creating our button
Button1=new JButton("Sign In");
//Creating our first Label
label1=new JLabel("User Name:");
//Creating our second label
label2=new JLabel("Password:");
//Creating our first text field
TextBox1 = new JTextField(20);
//Creating our second text field
TextBox2 = new JTextField(20);
//Setting bound for our Label1
label1.setBounds(50, 50, 100, 30);
//Setting bound for our Label2
label2.setBounds(50, 100, 100, 30);
//Setting bound for our TextBox1
TextBox1.setBounds(180, 50, 150, 20);
//Setting bound for our TextBox2
TextBox2.setBounds(180, 100, 150, 20);
//Setting bound for our Button1
Button1.setBounds(110, 150, 95, 30);
//Adding our Label1, Label2, TextBox1, TextBox2, Button1 to our frame
f.add(label1);
f.add(label2);
f.add(Button1);
f.add(TextBox1);
f.add(TextBox2);
f.setSize(300, 300);
f.setLayout(null);
f.setVisible(true);
)
)

Vous pouvez voir le code ci-dessous, j'ai utilisé Eclipse pour écrire le code.

Lorsque les lignes de code ci-dessus sont exécutées, nous obtenons la fenêtre suivante comme sortie. Vérifiez-le:

Méthodes courantes utilisées dans JLabel

Nous avons déjà discuté de JLabel et comment en créer un sous forme de texte ou d'icône. Voici une autre liste de méthodes généralement utilisées avec JLabel dans nos programmes. Ce sont les méthodes couramment utilisées de la classe JLabel.

  1. getIcon (): Cette méthode est utilisée pour afficher l'image que notre étiquette avait affichée.
  2. setIcon (Icon i): Cette méthode permet de définir notre icône à afficher sur notre image, i.
  3. getText (): Cette méthode retourne notre texte qui est affiché par notre étiquette.
  4. setText (String s): Cette méthode définit simplement le texte qui sera affiché par notre étiquette sur notre chaîne, s.

Ci-dessus, quelques méthodes généralement utilisées avec JLabel, comme setDisplayedMnemonic, getDisplayedMnemonic, etc.

JLabel est un descendant de JComponent qui est utilisé pour créer un texte simple ou des étiquettes d'icônes. Ils sont utilisés pour fournir des instructions textuelles et d'autres informations, si nécessaire, sur l'interface graphique pour que nos utilisateurs facilitent leur expérience.

Nous utilisons le composant JLabel du package Swing lorsque nous avons besoin d'un composant d'interface graphique qui nécessite l'affichage d'un message ou d'une image.

Articles recommandés

Ceci est un guide de JLabel en Java. nous discutons ici du but, des constructeurs, des exemples et des méthodes courantes utilisées dans JLabel. Vous pouvez également consulter l'article suivant pour en savoir plus -

  1. JOptionPane en Java
  2. JTextField en Java
  3. JDialog en Java
  4. JScrollPane en Java
  5. Événements HTML
  6. 5 principaux attributs d'événements HTML avec des exemples