Visual Basic.NET - Cargar Imagen con otro metodo

   
Vista:

Cargar Imagen con otro metodo

Publicado por Gustavo (4 intervenciones) el 05/01/2010 19:06:31
Saludos utilizo el siguiente codigo para cargar una Imagen, ya que tengo problemas con el metodo Image.FromFile(Ruta), ya que al sobreescribirla o quererla eliminar me dice que no se puede porque está siendo utilizado en otro proceso.
En fin, encontre esto y funciona muy bien:

Dim picTemporal As New PictureBox
picTemporal .ImageLocation = "C:\Imagen1.JPEG"
picTemporal .Load()

Me la muestra a la perfección, pero al querer hacer esto despues del codigo anterior:
picNueva.Image = picTemporal.Image

la picNueva no me muestra nada, es decir esta vacia. Entonces como puedo "copiar" la imagen que cargue con el metodo Load en otro Picture? se requiere un Stream o que?.

Espero puedan ayudarme.
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

RE:Cargar Imagen con otro metodo

Publicado por Joan F (129 intervenciones) el 05/01/2010 20:18:28
Hola,

Para copiar una imagen, has de usar un objeto Bitmap. Seria algo así:

Dim copiaImagen As Bitmap

Me.PictureBox1.Image = Image.FromFile("C:\Imagen1.jpg")
copiaImagen = New Bitmap(Me.PictureBox1.Image)
Me.PictureBox2.Image = copiaImagen

En todo caso, si el problema es debido a que el archivo te queda bloqueado (el método Image.FromFile bloquea el archivo hasta que el objeto Image es destruido), puedes hacer una "carga rápida" de la imagen, copiando los contenidos a un objeto Bitmap:

Dim imagenDeArchivo As Image
Dim imagen As Bitmap

imagenDeArchivo = Image.FromFile("C:\Imagen1.jpg")
imagen = New Bitmap(imagenDeArchivo)
imagenDeArchivo.Dispose()

Me.PictureBox1.Image = imagen
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

RE:Cargar Imagen con otro metodo

Publicado por Gustavo (4 intervenciones) el 06/01/2010 00:49:45
Gracias me funciono a la perfección

Dim imagenDeArchivo As Image
Dim imagen As Bitmap

imagenDeArchivo = Image.FromFile("C:\Imagen1.jpg")
imagen = New Bitmap(imagenDeArchivo)
imagenDeArchivo.Dispose()

Me.PictureBox1.Image = imagen

Esto era lo que necesitaba ;)

Gracias!
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