viernes, 21 de enero de 2011

Cómo colocar una imagen en un JFrame (Imagen escalada).

Hay varias formas de colocar una imagen en un Jframe, una de ellas es usando un JLabel como lo veremos a continuación.

Para ello, creamos un JLabel(jLabel1) y un JButton(jButton1) que es donde se hace la carga de la imagen al dar click...(esto último Uds. pueden hacerlo donde lo deseen).

Primero se tienen que importar las librerías java.awt.Image y javax.swing.ImageIcon.


         import java.awt.Image;
         import javax.swing.ImageIcon;

Luego de esto lo que hay que hacer es cargar la imagen de donde la tengamos guardada, esto se lo hace de la siguiente Forma:

                 ImageIcon icono = new javax.swing.ImageIcon(getClass().getResource("/imagenes/ima.png"));

Después la hacemos imagen:

         Image imagen = icono.getImage();

Ahora le podemos dar una dimensión deseada:

        ImageIcon iconoEscalado = new ImageIcon (imagen.getScaledInstance(100,100,Image.SCALE_SMOOTH));

Para finalmente colocarla en nuestro JLabel:

         jLabel1.setIcon(iconoEscalado);


El Código Final me queda así:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                      
        // TODO add your handling code here:
        ImageIcon icono = new javax.swing.ImageIcon(getClass().getResource("/imagenes/ima.png"));
        Image imagen = icono.getImage();
        ImageIcon iconoEscalado = new ImageIcon (imagen.getScaledInstance(100,100,Image.SCALE_SMOOTH));
        jLabel1.setIcon(iconoEscalado);
    }


Espero les sea de utilidad.

18 comentarios:

  1. Muchas Gracias Amigo, me sirve muy bien. Sigue publicando ejemplos así como este ;-)

    ResponderEliminar
  2. Respuestas
    1. TE VA A SERVIR MAS ESTA VERGOTA QUE TE VOY A MAETER POR EL ANO HASTA LA GARGANTA, JAJASALUDIS

      Eliminar
  3. Excelente aporte, Me funciono de una forma fenomenal ^^

    ResponderEliminar
  4. pinche pAGINA OTAKU,HIJO DE PERRA,ZORRA LESBICA CON SIFILIS

    ResponderEliminar
  5. Me ayudó mucho, gracias. ¡Era justo lo que necesitaba!

    ResponderEliminar
  6. Perfecto. Recontra fácil. Muchas Gracias.

    ResponderEliminar
  7. Soy nuevo en El net , y no entendi ni mrd , solo la primera parte

    ResponderEliminar