Meter una imagen en un jLabel

Endika
07 de Mayo del 2006
Hola:
No se como hacer una cosa. Tengo una clase Frame y un metodo esta_bien y quiero que si esta_bien devuelve true se habra un JDialog y insertar una imagen de un tick en un jlabel y si no insertar una imagen(una x), no se como hacer el tema de las imagenes.
he echo asi: Dialog.jlabel1= new jLabel1(....imagen.gif);
y me dice que no existe la variable jlabel.

Gracias!!

chuidiang
07 de Mayo del 2006
Hola:

Veo que además de no saber las imágenes, acabas de empezar con java.

Dialog es una clase de java. No existe Dialog.jlabel1
Si has hecho una clase que herede de Dialog y tienes dentro un atributo jlabel1, debes usar el nombre de la variable donde hayas hecho el new de tu clase Dialog. Si tu clase es MiDialgo, sería esto

MiDialogo ventana = new MiDialogo();
...
ventana.jlabel1

Cuando haces new, debes poner detrás el nombre de una clase y no una variable. new jLabel1 no vale. sería así

ventana.jlabel1 = new JLabel (....);

Para meter la imagen dentro, puedes meter un ImageIcon, así

ventana.jlabel1 = new JLabel (new ImageIcon ("c:/directorio/fichero.gif"));

Se buena.

Endika
07 de Mayo del 2006
Hola , muchisimas gracias pero lo pongo así
ventana.jlabel1 = new JLabel (new ImageIcon ("c:/directorio/fichero.gif"));
y me sigue poniendo que no existe la variable jlabel1

y en la clase ventana lo tengo declarado
JLabel jlabel1= new JLabel;

Gracias!!!!!!!!!

x
07 de Mayo del 2006
asegurate que no sea private para poder accesar a ella desde otra clase.
o postea parte de tu código para ver

Endika
07 de Mayo del 2006
he posteado el codigo,

public class Mensaje extends JDialog
{
private JButton jbOk = new JButton();
private JLabel jlMs = new JLabel();
JLabel jlImagen = new JLabel();

public Mensaje(String msje)
{
this(null, "", false);
jlMs.setText(msje);
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = this.getSize();
..........


void jButtony_actionPerformed(ActionEvent e)
{
if(esta_bien())
{
Dialog Mensaje= new Mensaje("Vas bien, adelante!");
Mensaje.jlImagen = new JLabel(new ImageIcon("C:\\tick.gif"));
}
else
{
Dialog Mensaje= new FrameMezua("Cuidado! Tienes algo mal");
Mensaje.jlImagen = new JLabel(new ImageIcon("C:\\warning.gif"));
}

Me da el error:

Error(2808,17): variable jlImagen not found in class java.awt.Dialog