Professional Documents
Culture Documents
JLabel
JLabel
La clase JLabel
Les etiquetes no són opaques per defecte. Això vol dir que si volem pintar el fons
(background) d’una etiqueta necessitarem primer fer-la opaca.
Label.setOpaque(true);
JLabel Constructors
String text;
Icon image;
int alignment; // JLabel.LEFT, JLabel.Center, or JLabel.RIGHT.
Exemples:
JLabel idLabel = new JLabel("Enter your ID:", JLabel.RIGHT);
Els mètodes per a canviar o accedir al text d’una JLabel són: setText() i getText().
Podem utilitzar HTML pel text de les etiquetes. Hem de posar davant de tot del text
<html>
Exemple:
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.GridLayout;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.ImageIcon;
/*
* LabelDemo.java needs one other file:
* images/middle.gif
*/
public class LabelDemo extends JPanel {
public LabelDemo() {
super(new GridLayout(3,1)); //3 rows, 1 column
JLabel label,label1, label2, label3;
JLabel theLabel;
//La carpeta d'imatges ha d'estar on hi ha els fitxers java
//en el nostre cas penjant de "src"
//es així per la forma com cerca el recurs
//al mètode createImageIcon
ImageIcon icon = createImageIcon("images/middle.gif",
"a pretty but meaningless splat");
};
add(theLabel);
//Per utilitzar HTML cal posar davant <HTML>
label = new JLabel("<html>A label<br> dos linies");
label.setFont(new Font("Serif", Font.PLAIN, 14));
label.setForeground(new Color(0x0000ff));
label.setOpaque(true); //SI NO FEM AIXÒ NO PINTA EL FONS.
label.setBackground(Color.YELLOW);
add(label);
}
}
}
El component JLabel no té events específics, per tant, utilitzarem un dels events que
suporten tots els components. En el nostre classe ens interessa la interacció amb el
ratolí. És a dir, la interfície MouseListener que ens facilitarà un objecte MouseEvent
com a paràmetre als mètodes.
Un exemple seria fer una classe externa oient de la label “JLabel” de l’exemple
anterior. Per afegir l’oient faríem:
Gestor és la nova classe oient que haurem de fer i que implementi la interfície
MouseListener. Tot seguit hi ha un exemple complet del gestor.
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;