Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

[SOLUCIONADO] Textbox no se actualiza en tiempo de ejecución

Estas en el tema de Textbox no se actualiza en tiempo de ejecución en el foro de Visual Basic clásico en Foros del Web. Me encuentro con un problema, y es que tengo un textbox donde voy mostrando la información de un proceso bastante largo, pero el textbox no ...
  #1 (permalink)  
Antiguo 14/06/2013, 06:37
 
Fecha de Ingreso: abril-2007
Mensajes: 99
Antigüedad: 17 años, 7 meses
Puntos: 0
Textbox no se actualiza en tiempo de ejecución

Me encuentro con un problema, y es que tengo un textbox donde voy mostrando la información de un proceso bastante largo, pero el textbox no se actualiza hasta que termina el proceso. Este es un ej. del código:

Código:
For i=1 to 100000
    Instrucciones 'llama a la función que hace las operaciones en mi programa
    Textbox.Text=Textbox.Text & "Numero operacion: " & i & " realizada correctamente." & Vbcrlf

Next i
El problema es que ese textbox no se va rellenando en tiempo de ejecución, sino que se rellena de golpe al final, por lo que si el proceso dura 30 minutos no veo por que número va, no veo si se ha quedado bloqueado en alguno, etc. ¿Alguna idea?

Saludos!
  #2 (permalink)  
Antiguo 14/06/2013, 06:54
Avatar de erbuson  
Fecha de Ingreso: noviembre-2009
Mensajes: 701
Antigüedad: 15 años
Puntos: 53
Respuesta: Textbox no se actualiza en tiempo de ejecución

Yo intentaria utilizar el DoEvents despues de poner los datos en el TextBox.

O tal vez el Text1.Refresh

Prueba y comenta

Saludos
__________________
Agradecer a quien te enseñó, es enseñar lo que de él aprendiste.
Recuerda: Decir gracias, poco cuesta y mucho vale ...
  #3 (permalink)  
Antiguo 14/06/2013, 10:47
 
Fecha de Ingreso: abril-2007
Mensajes: 99
Antigüedad: 17 años, 7 meses
Puntos: 0
Respuesta: Textbox no se actualiza en tiempo de ejecución

Exacto. Es lo que buscaba. Además, le he añadido para que el foco quede el la última línea y conforme avancen las líneas el texto se vaya desplazando. Lo que he añadido ha sido:

Código:
ResumenText.Refresh 'esto para actualizar el Textbox en tiempo de ejecución
    With ResumenText ' y esto para mantener el foco en la última línea
         .SelStart = Len(.Text)
        .SelLength = 0
    End With
Gracias...

Etiquetas: form, textbox, tiempo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:33.