SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => VB .NET => Mensaje iniciado por: vhaat en Martes 28 de Junio de 2005, 13:23

Título: Lentitud Al Cargar Imagenes Externas
Publicado por: vhaat en Martes 28 de Junio de 2005, 13:23
Buenas,

Tengo un programa muy simple, vb .net, que se encarga de pasar las fotos (jpg) que hay en una carpeta mediante un PictureBox y un timer.

El problema es que al pasar las fotos lo hace de una manera muy tosca, aparecen cuadritos por la pantalla durante medio segundo y luego cambia de foto.

Esto me ha pasado también cuando trabajo con backgrounds del form y cuando creo controles con imagenes en tiempo de ejecución.

Yo siempre he usado el...

 Picturebox1.Image = Image.FromFile('c:\foto1.jpg')
 Picturebox1.Image = Image.FromFile('c:\foto2.jpg')
 ...

¿Alguien puede decirme cual es el metodo para cargar las fotos de manera rápida? Me daria igual que saliese un 'loading..', pero no quiero que vaya a trompicones.

Saludos
Título: Re: Lentitud Al Cargar Imagenes Externas
Publicado por: senzao18 en Martes 28 de Junio de 2005, 16:38
Podrias mandar la funcion completa la cual usas ara cargar las imagenes??????
Título: Re: Lentitud Al Cargar Imagenes Externas
Publicado por: vhaat en Martes 28 de Junio de 2005, 17:53
Pues el código no lo tengo ahora a mano, pero se basa en rellenar un array con el path y nombre de la foto y lo pasamos a esta función:

Public Sub fnMuestraFoto(ByVal nombreFoto As String)
    PicFoto.Image = Image.FromFile(nombreFoto.ToString)
End Sub

Luego hay un timer que hace algo como fnMuestraFoto(arrFotos(x))
Título: Re: Lentitud Al Cargar Imagenes Externas
Publicado por: Sagma en Martes 28 de Junio de 2005, 18:17
Hola, no se si te sirva, pero yo lo tengo de esta manera

Código: Text
  1.  
  2.             Try
  3.                 Dim strRuta As String = "c:\sagmasoft\fotos\" + CStr(emp.suempcemp) + ".bmp"
  4.                 PictureBox1.Image = System.Drawing.Image.FromFile(strRuta)
  5.             Catch err As Exception
  6.                 'MsgBox("No hay imagen : " + err.Message.ToString)
  7.                 Dim strRuta As String = "c:\sagmasoft\fotos\555.bmp"
  8.                 PictureBox1.Image = System.Drawing.Image.FromFile(strRuta)
  9.             End Try
  10.  
  11.  

by