470
Capítulo 11 Componentes de la GUI: parte 1
Archivo
Nuevo
Abrir...
Cerrar
Observación de apariencia visual 11.5
Por lo general, el texto en un objeto
JLabel
utiliza la capitalización estilo oración.
La aplicación de las fi guras 11.6 y 11.7 demuestra varias características de
JLabel
y presenta el marco de
trabajo que utilizamos en la mayoría de nuestros ejemplos de GUI. No resaltamos el código en este ejemplo, ya
que casi todo es nuevo. [
Nota: hay muchas más características para cada componente de GUI de las que pode-
mos cubrir en nuestros ejemplos. Para conocer todos los detalles acerca de cada componente de la GUI, visite su
página en la documentación en línea. Para la clase
JLabel
, visite
java.sun.com/javase/6/docs/api/javax/
swing/JLabel.html
].
La clase
LabelFrame
(fi gura 11.6) es una subclase de
JFrame
. Utilizaremos una instancia de la clase
Label-
Frame
para mostrar una ventana que contiene tres objetos
JLabel
. Las líneas 3 a 8 importan las clases utilizadas
en la clase
LabelFrame
. La clase extiende a
JFrame
para heredar las características de una ventana. Las líneas 12
a 14 declaran las tres variables de instancia
JLabel
, cada una de las cuales se instancia en el constructor de
JLa-
belFrame
(líneas 17 a 41). Por lo general, el constructor de la subclase de
JFrame
crea la GUI que se muestra
en la ventana, cuando se ejecuta la aplicación. La línea 19 invoca al constructor de la superclase
JFrame
con el
argumento
"Prueba de JLabel"
. El constructor de
JFrame
utiliza este objeto
String
como el texto en la barra
de título de la ventana.
1
// Fig. 11.6: LabelFrame.java
2
// Demostración de la clase JLabel.
3
import
java.awt.FlowLayout;
// especifica cómo se van a ordenar los componentes
4
import
javax.swing.JFrame;
// proporciona las características básicas de una ventana
5
import
javax.swing.JLabel;
// muestra texto e imágenes
6
import
javax.swing.SwingConstants;
// constantes comunes utilizadas con Swing
7
import
javax.swing.Icon;
// interfaz utilizada para manipular imágenes
8
import
javax.swing.ImageIcon;
// carga las imágenes
9
10
public class
LabelFrame
extends
JFrame
11
{
12
private
JLabel etiqueta1;
// JLabel sólo con texto
13
private
JLabel etiqueta2;
// JLabel construida con texto y un icono
14
private
JLabel etiqueta3;
// JLabel con texto adicional e icono
15
16
// El constructor de LabelFrame agrega objetos JLabel a JFrame
17
public
LabelFrame()
18
{
19
super
(
"Prueba de JLabel"
);
20
setLayout(
new
FlowLayout() );
// establece el esquema del marco
21
22
// Constructor de JLabel con un argumento String
23
etiqueta1 =
new
JLabel(
"Etiqueta con texto"
);
24
etiqueta1.setToolTipText(
"Esta es etiqueta1"
);
25
add( etiqueta1 );
// agrega etiqueta1 a JFrame
26
27
// Constructor de JLabel con argumentos de cadena, Icono y alineación
28
Icon insecto =
new
ImageIcon( getClass().getResource(
"insecto1.gif"
) );
29
etiqueta2 = new JLabel(
"Etiqueta con texto e icono"
, insecto,
30
SwingConstants.LEFT
);
31
etiqueta2.setToolTipText(
"Esta es etiqueta2"
);
32
add( etiqueta2 );
// agrega etiqueta2 a JFrame
33
34
etiqueta3 =
new
JLabel();
// Constructor de JLabel sin argumentos
35
etiqueta3.setText(
"Etiqueta con icono y texto en la parte inferior"
);
36
etiqueta3.setIcon( insecto );
// agrega icono a JLabel
37
etiqueta3.setHorizontalTextPosition(
SwingConstants.CENTER
);
Figura 11.6
| Objetos
JLabel
con texto e iconos. (Parte 1 de 2).
11_MAQ_CAP_11.indd470
4/19/081:25:56AM