Visualizar imagen en jPanel de una ventana principal

Iniciado por KidJoe, 2 Septiembre 2010, 18:29 PM

0 Miembros y 1 Visitante están viendo este tema.

KidJoe

Mi problema es que abro un Formulario de busqueda, doy los resultados y en los resultados tengo que seleccionar una imagen del resultado que deseo y visualizarlo en un JPanel en el visor principal

Código (java) [Seleccionar]
private void bVerDocActionPerformed(java.awt.event.ActionEvent evt) {                                        
       // TODO add your handling code here:

       this.setVisible(false);
       if(lResultados.getSelectedIndex()==0){
        fc.setFileFilter(new FileNameExtensionFilter("Archivos de imagen", "jpg", "jpeg", "png", "gif"));
        int opcion = fc.showDialog(this, "Abrir");
       if (opcion == JFileChooser.APPROVE_OPTION)
       {
          File file = fc.getSelectedFile();
        //
        //Aqui intento crear un obeto del menu principal para poner la imagen
         objMN.mostrarImagen2(file);
          objMN.cargaDirectorio(file.getParent(),new MenuPrincipal());
       }
       }
     //  VP.PrepararPagina(this);
      // new MenuPrincipal(lResultados.getSelectedIndex(),1);
   }  
                       

Leyer

Lo que tienes que haces es en el JPanel implementar el metodo paintComponent(graphics c); y utilizar el metodo drawImage

Código (java) [Seleccionar]
graphics.drawImage(new ImageIcon("/home/leyer/h.jpg").getImage(), 0,0, getWidth(), getHeight(), null);

Una vez que le pases la imagen por el método, llamas al método repaint(); de panel si no se visualiza.

Un saludo.

KidJoe

no, si no tengo problemas al pintar la imagen, tengo problemas para pintarla en otra ventana que ya esta inicializada...Pero muchas gracias por tu respuesta

Leyer

#3
Bueno has lo siguiente, mantén una variable privada de ImagenIcon en el panel que quieres visualizarla, luego cuando llamas al método  objMN.mostrarImagen2(file); inicias la variable de ImagenIcon con la ruta del archivo, luego en tu metodo paintComponent() creas la condición:

Código (java) [Seleccionar]
if(imageIcon instanceof ImageIcon)
//aqui el metodo drawImage


para que cuando la variable imagenIcon este iniciada se muestre la imagen.

Prueba y me cuentas

Un saludo.