Visual Basic - Refresco pantalla programa

Life is soft - evento anual de software empresarial
   
Vista:

Refresco pantalla programa

Publicado por Raska (9 intervenciones) el 01/10/2010 02:18:00
Muy buenas a tod@s

Mi duda es la siguiente:

Cuando un programa de VB6.0 al pulsar un botón entra en un for "grande", el programa se me queda "colgado". Es decir se me queda como si no me respondiera.

Quiero que durante ese for el programa no se me quede colgado. ¿Hay alguna forma de hacerlo o alguna forma de sustituir ese for?

Muchas gracias por adelantado!
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:Refresco pantalla programa

Publicado por Pedro Luis (128 intervenciones) el 01/10/2010 09:00:03
Puedes usar el mousepointer=11 (reloj de arena) para indicar que el ordenador lo está pensando.
mousepointer=11
For N=1 to M

Next
Mouse pointer=0

O usar un Gauge, lo encontraras en Proyecto-Componentes-MicroHelp Gauge Control. Le pones el Max=M y el value a N
Gauge.Visible=true
Gauge1.Max=M
For N=1 to M

Gauge1.Value=n
Next
Gauge.Visible=False

O simplemente un label

For N=1 to M

Label1="Procesado el " & N*100/M & " %"
Next

etc, etc , etc
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

Fácil

Publicado por Yo (49 intervenciones) el 01/10/2010 17:31:36
Simplemente dentro de tu For-Next escribe la instrucción DoEvents y ya.
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:Fácil

Publicado por El metichón (1 intervención) el 01/10/2010 17:34:11
eso ya lo contesto antoni masana, no repitas respuestas tio
y pal que preguntó, no repitas preguntas y no le hagas caso a lo que te dice el tal pedro luis, no sabe de que habla el tipo
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:Refresco pantalla programa

Publicado por XHkrElite (518 intervenciones) el 03/10/2010 07:03:14
esto regularmente pasa al leer archivos te de texto muy grandes

Puedes usar un while con una condicion
sample
while(mientras) no se presione tal tecla o evento
has esto
loop

puedes liberar la memoria
set var = nothing

puedes poner un timer que te libere la memoria cada cierto tiempo
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:Refresco pantalla programa

Publicado por Raska (9 intervenciones) el 04/10/2010 19:16:51
Muchas 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