Seguidores

MIS WEBS



sábado, 6 de enero de 2018

COPIAR Y PEGAR IMÁGENES DENTRO DE UNA LAMINA DE UN FRAME



Podemos utilizar el método copyArea para copiar y pegar una imagen o zona del frame (marco).
• copyArea
public abstract void copyArea(int x, int y, int width, int height, int dx,
int dy)

Copia un área del componente por una distancia especificada por dx y dy. Desde el punto especificado por x e y, este método se copia hacia abajo y hacia la derecha. Para copiar un área del componente hacia la izquierda o hacia arriba, especifique un valor negativo para dx o dy. Si una parte del rectángulo de origen se encuentra fuera de los límites del componente, o está oscurecida por otra ventana o componente, copyArea no podrá copiar los píxeles asociados. El área omitida se puede actualizar llamando al método de pintura del componente.

Parametros:

x - la coordenada x del rectángulo fuente.
y - la coordenada y del rectángulo fuente.
width – ancho del objeto original.
height – alto del objeto original.
dx - la distancia horizontal para copiar los píxeles.
dy- la distancia vertical para copiar los píxeles.






import java.awt.*;
import java.io.*;
import javax.imageio.*;
import javax.swing.*;

public class practica5_frame {

public static void main(String[] args) {
Marco6 marco = new Marco6();
marco.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
marco.setVisible(true);
}
}

class Marco6  extends JFrame{
public Marco6() {
setTitle ("marco con dibujos");
setBounds(400,200,700,400); 
Lamina6 lamina = new Lamina6();
add(lamina);
}
}



class Lamina6 extends JPanel{
public void paintComponent(Graphics g) {
super.paintComponent(g);
setBackground(Color.GRAY);
File ruta = new File("images2.jpg");
try { //tratamineto de excepciones, haz esto y si no catch
foto = ImageIO.read(ruta); 
} 
catch(IOException e) { 
JOptionPane.showConfirmDialog(null, "no esta la foto");
}
//escribimos la foto en nuestra lamina
g.drawImage(foto, 50, 50, null); 
g.copyArea(50, 50, 500, 170, 300, 120);
}
private Image foto;
}





No hay comentarios:

Publicar un comentario

Buscar este blog

Sandisk y Western Digital