Introducción a JLabel Java Swing

JLabel es una de las muchas clases de Java del paquete Java Swing. La clase JLabel del paquete swing puede mostrar un texto o una imagen o ambos. Al igual que otras clases en el paquete Swing, la etiqueta y el contenido de la etiqueta que muestra JLabel se alinean mediante alineaciones horizontales y verticales. El programador puede especificar dónde se mostrarán los contenidos de la etiqueta en el área de visualización de la etiqueta configurando las alineaciones.

Por defecto, el texto o más específicamente, el texto de la etiqueta está alineado verticalmente y se muestra en el centro de su área de visualización, mientras que una imagen o imagen que se muestra está centrada horizontalmente de forma predeterminada.

También podemos especificar fácilmente la posición y mostrar el texto relativo a nuestra imagen. El texto normalmente se muestra al final de nuestra imagen, con el texto alineado verticalmente, como se discutió anteriormente.

Es el más simple de los componentes de la GUI de Swing. El componente JLabel del paquete Swing es casi lo mismo que una etiqueta del paquete AWT, la diferencia es que JLabel no contiene texto editable por el usuario que es 'texto de solo lectura. JLabel simplemente se usa para mostrar un mensaje de texto o un icono / imagen o ambos en la pantalla, pero no puede reaccionar a los eventos del usuario, por ejemplo, el enfoque del mouse o el enfoque de palabras clave.

Simplemente podemos usar JLabel creando y usando una instancia para esta clase. A continuación se muestra una captura de pantalla de ejemplo después de crear un objeto para la clase JLabel e imprimir nuestra etiqueta, 'Una etiqueta básica'.

Aquí creamos un objeto de la clase JLabel llamado 'etiqueta' con un texto de etiqueta 'Una etiqueta básica' dado con él. Simplemente puede escribirlo como:

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

Se mostrará como:

Propósito de JLabel en Java

JLabel no reacciona a los eventos de entrada realizados por el usuario, como el foco del mouse o el teclado. Es simplemente un texto o imagen no editable o icono o ambos. JLabel se usa generalmente junto con aquellos componentes que no tienen su propia capacidad para explicar o demostrar su propósito. El objeto JLabel creado proporcionará a nuestro usuario, las instrucciones de texto o información en nuestra GUI.

Por ejemplo, un área de texto para ingresar un Nombre o Contraseña, etc. requerirá una etiqueta para informar al usuario sobre el cuadro de texto.

Encuentra este ejemplo explicado a continuación con capturas de pantalla.

Sin el uso de JLabel, los cuadros de texto aparecerán perdidos para un usuario ya que no se dicen a sí mismos qué se espera que el usuario ingrese en el campo de texto. Tomemos el siguiente ejemplo, hemos agregado un campo de texto sin ninguna etiqueta.

Tenga en cuenta que simplemente puede agregar un campo de texto utilizando una línea de código simple a continuación.

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

Pero si este campo de texto se usa en combinación con JLabel, aparecerá como se muestra a continuación y tendrá más sentido, ¿no?

A continuación se muestra otro ejemplo en el que utilizamos nuestro campo de texto anterior junto con el cual hemos agregado una cadena simple de una línea 'Ingresar dirección de correo electrónico', sugiriendo a nuestro usuario que necesita agregar su dirección de correo electrónico en el área de texto dada.

Como se muestra arriba, simplemente podemos agregar un campo de texto. Ahora también agregaremos una etiqueta como se muestra a continuación:

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

Este fue un ejemplo simple que creamos. Era un programa simple que mostraba un campo de texto y una etiqueta con él. También podemos agregar un icono junto con el uso de otro método de uso común con JLabel, conocido como el método setIconTextGap. Este método ayuda al programador a especificar cuántos píxeles deben mostrarse aparte nuestro texto y nuestra imagen.

Constructores de JLabel

La clase Java JLabel tiene varios constructores que pueden usarse para crear nuestra etiqueta con diferentes características.

  1. JLabel (): este constructor crea una etiqueta vacía sin texto. Esta instancia de la clase crea la etiqueta sin imagen y una cadena o texto vacío para su título. El texto se puede configurar en otro momento.
  2. JLabel (Imagen de icono): este constructor crea una etiqueta con solo un icono o imagen especificada. El icono o archivo de imagen se puede usar desde su propio sistema de archivos.
  3. JLabel (texto de cadena): esta instancia crea una etiqueta con un texto específico mientras declara nuestro constructor. Además de los constructores básicos mencionados anteriormente, también tenemos lo siguiente que puede usar.
  4. JLabel (Imagen de icono, int horizontalAlignment): esta instancia de constructor se usa para crear una imagen o icono específico junto con la alineación horizontal.
  5. JLabel (String text, int horizontalAlignment): esta instancia de constructor se usa para crear un texto especificado junto con la alineación horizontal.
  6. JLabel (texto de cadena, icono de icono, alineación horizontal horizontal): esta instancia de constructor se utiliza para crear una imagen o icono específico, texto, así como su alineación como 'horizontal'.

Ejemplos de JLabel

El siguiente es un ejemplo para crear un programa simple de 'Formulario de inicio de sesión' con dos etiquetas agregadas para dos campos de texto que muestran su naturaleza. También agregamos un botón con su propia etiqueta que muestra el texto como 'Iniciar sesión'.

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

Puede ver el código a continuación, he usado Eclipse para escribir el código.

Cuando se ejecutan las líneas de código anteriores, obtenemos la siguiente ventana como salida. Echale un vistazo:

Métodos comunes utilizados en JLabel

Ya hemos discutido JLabel y cómo crear uno como texto o icono. A continuación hay otra lista de métodos que generalmente se usan junto con JLabel en nuestros programas. Estos son los métodos de uso común de la clase JLabel.

  1. getIcon (): este método se utiliza para mostrar la imagen que había mostrado nuestra etiqueta.
  2. setIcon (Icon i): este método ayuda a configurar nuestro icono para que se muestre en nuestra imagen, i.
  3. getText (): este método devuelve nuestro texto que se muestra en nuestra etiqueta.
  4. setText (String s): este método simplemente establece el texto que nuestra etiqueta mostrará en nuestra cadena, s.

Arriba hay algunos métodos utilizados generalmente junto con JLabel, entre otros, como setDisplayedMnemonic, getDisplayedMnemonic, etc.

JLabel es un descendiente de JComponent que se utiliza para crear un texto simple o etiquetas de iconos. Se utilizan para proporcionar instrucciones de texto y otra información, si es necesario, en la interfaz gráfica para que nuestros usuarios faciliten su experiencia.

Usamos el componente JLabel del paquete Swing cuando necesitamos un componente de interfaz gráfica que necesita un mensaje o una imagen para mostrar.

Artículos recomendados

Esta es una guía de JLabel en Java. Aquí discutimos el propósito, los constructores, los ejemplos y los métodos comunes utilizados en JLabel. También puede consultar el siguiente artículo para obtener más información:

  1. JOptionPane en Java
  2. JTextField en Java
  3. JDialog en Java
  4. JScrollPane en Java
  5. Eventos HTML
  6. Los 5 principales atributos de eventos HTML con ejemplos