Controlar que las imagenes se han terminado de cargar

27/02/2007 - 03:58 por Takedasan | Informe spam
Hola a todos,

llevo dandole vueltas a un asunto que me trae de cabeza, pues estoy
empezando a trabajar con VB 2005 y muchas cosas de VB6 ya no son validas y
ando algo perdido.
introduzco imagenes en desde una direccion web en un PictureBox y claro cada
una tarda diferente tiempo en cargarse, aunque sean del mismo tamaño y
definicion, es cuestion de la conexion establecida al momento de ejecutar la
orden.

El caso es que cargo esas imagenes y me gustaria saber como puedo hacer para
saber si las 12 imagenes se han terminado de cargar y asi permitir realizar
la vision de la secuencia, es decir, saber en que momento puedo dar sin miedo
al boton que presenta todas las imagenes, ya que si hay alguna que todavia se
esta cargando se bloquea, pues todavia, el contenido del PictureBox es
Nothing.

Gracias por la ayuda

Preguntas similare

Leer las respuestas

#6 SoftJaén
27/02/2007 - 22:14 | Informe spam
"Takedasan" preguntó:

¿de que forma se puede hacer lo de los 'index' [PictureBox(index)]?, ya
que me resultaria dificil creer que tengo que hacer una a una por
ejemplo el Refresh y no con un simple 'loop' como se hace en VB6.



Puedes recorrer la colección «Controls» de la clase Form, para ejecutar el
método «Refresh» sólo en aquellos controles que sean del tipo PictureBox:

For Each ctrl As Control In Me.Controls
If TypeOf ctrl Is PictureBox Then
ctrl.Refresh()
End If
Next

Pero crear un array de controles en Visual Basic .net, es un poco más
complicado a como se hace en Visual Basic clásico.

' Declaración a nivel de la clase Form
Private ArrayPictureBox(11) As PictureBox

' Definimos los doce controles PictureBox
For n As Int32 = 0 To 11
Dim pb As New PictureBox
With pb
.Location = New Point(90 * n, 100)
.Size = New Size(50, 50)
End With
' Lo añadimos a la colección Controls
Me.Controls.Add(pb)
ArrayPictureBox(n) = pb
Next

Si posteriormente deseas, por ejemplo, modificar el color de fondo,
ejecutarías lo siguiente:

For n As Int32 = 0 To 11
ArrayPictureBox(n).BackColor = Color.BlueViolet
Next

Esto, en cuanto a crear el array en tiempo de ejecución. Para crearlo en
tiempo de diseño, échale un vistazo al siguiente código del compañero
Eduardo A. Morcillo:

http://groups.google.com/group/micr...ode=source

Te advierto que no lo he probado, aunque conociendo al autor del trabajo,
estoy seguro que funciona. :-)

Los controles de Visual Basic .net, no tienen definidos una propiedad
«Index».

Enrique Martínez
[MS MVP - VB]

Nota informativa: La información contenida en este mensaje, así como el
código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin
garantías de ninguna clase, y no otorga derecho alguno. Usted asume
cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o
sugerido en el presente mensaje.
Respuesta Responder a este mensaje
#7 Takedasan
28/02/2007 - 01:01 | Informe spam
Muchas gracias, me ha sido muy util.

Donde podria encontrar ejemplos de rutinas Main, ya que veo que ha cambiado
mucho el sistema de utilización y el 'modus operanti' y al mismo tiempo
recomendarme un buen libro de referencia de Visual Basic 2005

Muchas gracias por el tiempo dedicado.
Respuesta Responder a este mensaje
#8 SoftJaén
28/02/2007 - 07:53 | Informe spam
"Takedasan" preguntó:

Donde podria encontrar ejemplos de rutinas Main, ya que veo
que ha cambiado mucho el sistema de utilización y el
'modus operanti'



En las páginas del Guille encontrarás multitud de ejemplos, aunque ignoro si
cumplirán con el término «rutinas Main»:

http://www.elguille.info/

... y al mismo tiempo recomendarme un buen libro de
referencia de Visual Basic 2005



No te puedo recomendar ningún libro porque no he tenido la ocasión de leer
alguno sobre Visual Basic 2005.

El único libro de Visual Basic .net que tengo siempre a mano es de Francesco
Balena, titulado «Programación Avanzada con Microsoft Visual Basic .NET»,
que fue publicado en 2002 y basado en la versión 1.0 del marco de trabajo de
.net. Aunque es antiguo, no tiene desperdicio alguno, y las explicaciones
que encontrarás en el mismo, siguen siendo totalmente válidas en la
actualidad.

Te dejo unos enlaces por si son de tu interés:

Curso de introducción a .NET con Visual Basic 2005
http://msdn2.microsoft.com/es-es/library/ms364210(VS.80).aspx

An Overview of Visual Basic 2005
http://msdn2.microsoft.com/en-us/library/ms364067(VS.80).aspx

Enrique Martínez
[MS MVP - VB]

Nota informativa: La información contenida en este mensaje, así como el
código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin
garantías de ninguna clase, y no otorga derecho alguno. Usted asume
cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o
sugerido en el presente mensaje.
Respuesta Responder a este mensaje
#9 Takedasan
28/02/2007 - 18:49 | Informe spam
Muchas gracias, ha sido un detallazo.
Respuesta Responder a este mensaje
#10 Vinchenzo vinç
28/02/2007 - 22:28 | Informe spam
"Takedasan" escribió en el mensaje news:
...
recomendarme un buen libro de referencia de Visual Basic 2005



Hola,
adicionalmente a las sugerencias de Enrique, añadiría que OnLine tienes un buen punto de partida:

· Curso online de Visual Basic 2005 para desarroladores de Visual Basic 6
http://www.desarrollaconmsdn.com/ms...index.html

Y como tangibles:

· Manual Avanzado Microsoft Visual Basic 2005
Jorge Serrano Pérez
ISBN: 84-415-2021-6

· Manual Imprescindible de Visual Basic 2005
Guillermo Som Cerezo (el Guille)
ISBN: 84-415-2080-1


Saludos
( ! ) Respuestas precedentes en Google:
http://groups.google.com/group/micr...blic.es.vb
( i ) Temperancia en el foro:
http://support.microsoft.com/defaul...newsreglas
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida