Java - Imagen en jPanel

 
Vista:
Imágen de perfil de Alejandro
Val: 38
Ha aumentado 1 puesto en Java (en relación al último mes)
Gráfica de Java

Imagen en jPanel

Publicado por Alejandro (21 intervenciones) el 30/08/2018 22:06:35
Necesito colocar una imagen en un jPanel, pero que esta imagen se adapte al tamaño de diferentes monitores. Se agradece desde ya!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Imagen en jPanel

Publicado por Constantin (1 intervención) el 29/04/2019 21:18:15
Crea esta clase "Imagen.java"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package capaNegocis;
 
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Image;
import javax.swing.ImageIcon;
import javax.swing.JPanel;
 
public class Imagen extends javax.swing.JPanel{
 
    String ruta;
 
    public Imagen(int x, int y, String ruta){
        this.setSize(x, y);
        this.ruta = ruta;
    }
 
 
    public void paint(Graphics g){
        Dimension height = getSize();
        //ImageIcon img = new ImageIcon(getClass().getResource(ruta));
        Image imgExterna = new ImageIcon(ruta).getImage();
 
        g.drawImage(imgExterna, 0, 0, height.width, height.height, null);
        setOpaque(false);
        super.paintComponent(g);
    }
 
}

Para el boton que carga la imagen es el siguiente codigo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
private void btnCargarImagen1ActionPerformed(java.awt.event.ActionEvent evt) {
 
        JFileChooser fc = new JFileChooser();
        fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
 
         int seleccion = fc.showOpenDialog(this);
if (seleccion == JFileChooser.APPROVE_OPTION) {
            File fichero = fc.getSelectedFile();
            String ruta = fichero.getAbsolutePath();
 
            int x = jpImagen.getWidth();
            int y = jpImagen.getHeight();
 
            Imagen img = new Imagen(x, y, ruta);
            jpImagen.add(img);
            jpImagen.repaint();
        }
 
 
    }
jpImagen es un JPanel.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar