Imagen JPG (Codigo fuente)

jasnario
16 de Junio del 2006
Hola , dejo el codigo fuente de un componente que dibuja una imagen , espero que os ayude

En caso de que encontreis errores por favor , hacedmelo saber para corregirlo

Saludos

/*
* Creado el 03-dic-2005
*
* Para cambiar la plantilla para este archivo generado vaya a
* Ventana>Preferencias>Java>Generación de código>Código y
comentarios
*/


import java.awt.Component;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Rectangle;

import javax.swing.ImageIcon;
import javax.swing.Scrollable;
import javax.swing.SwingConstants;

/**
* @author Administrador
*
* Para cambiar la plantilla para este comentario de tipo generado vaya a
* Ventana>Preferencias>Java>Generación de código>Código y
comentarios
*/
public class Imagen extends Component implements Scrollable{

public Dimension getPreferredScrollableViewportSize()
{
return this.getPreferredSize();
}

public Imagen()
{

}

public boolean getScrollableTracksViewportHeight() {return false;}

public boolean getScrollableTracksViewportWidth() {return false;}


public int maxUnitIncrement=1;

public int getScrollableUnitIncrement(Rectangle visibleRect,
int orientation,
int direction) {
//get the current position
int currentPosition = 0;
if (orientation == SwingConstants.HORIZONTAL)
currentPosition = visibleRect.x;
else
currentPosition = visibleRect.y;

//return the number of pixels between currentPosition
//and the nearest tick mark in the indicated direction
if (direction < 0) {
int newPosition = currentPosition -
(currentPosition / maxUnitIncrement) *
maxUnitIncrement;
return (newPosition == 0) ? maxUnitIncrement : newPosition;
} else {
return ((currentPosition / maxUnitIncrement) + 1) *
maxUnitIncrement - currentPosition;
}
}

public int getScrollableBlockIncrement(Rectangle visibleRect,
int orientation,
int direction) {
if (orientation == SwingConstants.HORIZONTAL)
return visibleRect.width - maxUnitIncrement;
else
return visibleRect.height - maxUnitIncrement;
}

private ImageIcon II=null;

public void setImage(String imagen)
{
II=new ImageIcon(imagen);
setPreferredSize(new Dimension(II.getIconWidth(),II.getIconHeight()));
repaint();
}

public void paint(Graphics g)
{
if (II!=null)
II.paintIcon(this,g,0,0);
}



}