Modificar el tamaño de una imagen en tiempo de ejecución (VB2005)

02/10/2006 - 19:36 por Carlos Gómez | Informe spam
Para cargar una imagen (en tiempo de ejecucion) en un boton hago lo
siguiente:
Button1.Image=Image.FromFile("C:\ImageEjemplo.jpg")

Ahora bien, si el tamaño de la imagen es mayor al tamaño del boton,
la imagen es recortada.

¿Hay alguna forma de ajustar el tamaño de la imagen al tamaño del
boton?

El PictureBox tiene la posibilidad de hacer SizeMode=StretchImage, que
hace eso mismo, pero el button no.

Otra forma sería modificar el tamaño de la imagen para ajustarla al
tamaño del boton y despues cargarla, pero no se como se hace.

Alguien sabe alguna forma de hacerlo
 

Leer las respuestas

#1 Carlos Gómez
03/10/2006 - 11:53 | Informe spam
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs)
Handles Button1.Click
' Estas dos líneas crean un delegado que nunca se usa
Dim myCallback As Image.GetThumbnailImageAbort
myCallback = New Image.GetThumbnailImageAbort(AddressOf
ThumbnailCallback)

' Cargamos la imagen en un objeto Bitmap
Dim myBitmap As New Bitmap("C:\ImageEjemplo.jpg")

' Le asignamos la imagen al boton, teniendo en cuenta el tamaño del
boton
Button1.Image = myBitmap.GetThumbnailImage(_
Button1.Size.Width,_
Button1.Size.Height, _
myCallback,_
System.IntPtr.Zero)
' Limpiamos la basura
myBitmap.Dispose()
myBitmap = Nothing
myCallback = Nothing
End Sub

' Necesario para el delegado
Public Function ThumbnailCallback() As Boolean
Return False
End Function

Preguntas similares