mostrar una imagen en un jpanel en netbeans

      • 118
      • mensajes
      • miembro desde
      • 02/11/07
    #1 mostrar una imagen en un jpanel en netbeans

    Hola foro, estoy estudiando programación en java con netbeans, y en frame quiero cargar un objeto, y junto con el mostrar una imagen. el problema es que no se como!, busque por todo google, y no encuentro un ejemplo que se entienda. lo mas lejos que llegue fue a seguir un ejemplo que me llevo a lo siguiente:


    package Sistema;

    import java.awt.Dimension;
    import java.awt.Graphics;
    import javax.swing.ImageIcon;

    /**
    *
    * @author Ivanhoe
    */
    public class ImagePanel extends javax.swing.JPanel {

    String ruta = "";

    /** Creates new form MiPanelImagenes */
    public ImagePanel(String ruta, int ancho, int alto) {
    initComponents();
    this.ruta = ruta;
    this.setSize(ancho, alto);
    this.setVisible(true);
    }

    @Override
    public void paintComponent(Graphics g) {
    super.paintComponent(g);
    Dimension tamanio = getSize();
    ImageIcon imagenFondo = new ImageIcon(getClass().getResource(ruta));
    g.drawImage(imagenFondo.getImage(), 0, 0, tamanio.width, tamanio.height, null);
    setOpaque(false);
    }

    /** This method is called from within the constructor to
    * initialize the form.
    * WARNING: Do NOT modify this code. The content of this method is
    * always regenerated by the Form Editor.
    */
    private void initComponents() {

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
    this.setLayout(layout);
    layout.setHorizontalGroup(
    layout.createParallelGroup(javax.swing.GroupLayout .Alignment.LEADING).addGap(0, 400, Short.MAX_VALUE));
    layout.setVerticalGroup(
    layout.createParallelGroup(javax.swing.GroupLayout .Alignment.LEADING).addGap(0, 300, Short.MAX_VALUE));
    }
    // Declaración de varibales -no modificar
    // Fin de declaración de variables
    }



    y en el constructor del formulario en el que tengo el panel puse:

    ImagePanel pnlEstanque = new ImagePanel("C:/Colecciones/src/Caratulas/44.jpg", 433, 326);
    panelImagen.add(pnlEstanque, BorderLayout.CENTER);



    el problema es que me da un error:

    Spoiler El error


    y no se por que me lo da, creo que es algo que tiene que ver con el ImageIcon, pero no se que, cualquier ayuda, la agradezco
  1. ¿Este tema te pareció interesante? Compártelo!

    ¿No es lo que buscabas? Intenta buscar un tema similar

    3 comentarios / 29472 Visitas

      • 2,862
      • mensajes
      • miembro desde
      • 13/09/03
    30/11/2009
    #2 Re: mostrar una imagen en un jpanel en netbeans

    La declaracion de Sring ruta usa esta:

    String ruta = new String();

    Y en el constructor pasale esto:
    ImagePanel pnlEstanque = new ImagePanel("C:\\Colecciones\\src\\Caratulas\\44.jp g", 433, 326);

    Saludos.

      • 2,582
      • mensajes
      • miembro desde
      • 16/03/04
    30/11/2009
    #3 Re: mostrar una imagen en un jpanel en netbeans

    El setOpaque(false); quitalo del paintComponent y ponelo en el constructor

      • 118
      • mensajes
      • miembro desde
      • 02/11/07
    30/11/2009
    #4 Re: mostrar una imagen en un jpanel en netbeans

    bueno, lo probé, y no dio resultado, voy a pregutar en la facultad.
    El problema es el mismo, pero bueno, voy a seguir con lo demas y eso lo dejo para el final.
    Gracias por responder!.

IR ARRIBA