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
