Ver Mensaje Individual
  #2 (permalink)  
Antiguo 08/05/2006, 06:35
Avatar de chuidiang
chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Hola:

Si metes la foto en el JLabel, el JLabel tenderá a coger el tamaño de la foto, siempre que el layout de la ventana donde lo metas se lo permita y no hagas cosas como label.setSize() o label.setPreferredSize().

Si quieres que la foto se agrande o se haga más pequeña, el ImageIcon te permite obtener un getImage y este tiene un metodo getScaledInstance() en el que dices el tamaño deseado. Como tercer parámetro se admite un entero que representa el algoritmo a usar para hacer el escalado. SCALE_SMOOTH suele ir bien para hacer las fotos más pequeñas, pero tienes más opciones y puedes probar cual te viene mejor.

resumiendo esto ultimo, más o menos puede ser esto

Código:
ImageIcon icono = new ImageIcon("fichero.gif");
Image imagen = icono.getImage();
ImageIcon iconoEscalado = new ImageIcon (imagen.getScaledInstance(ancho,alto,Image.SCALE_SMOOTH));
JLabel etiqueta = new JLabel (iconoEscalado);
Se bueno.
__________________
Apuntes Java
Wiki de Programación