Visual Basic - Se para y no sé porqué.Ayuda!!

Life is soft - evento anual de software empresarial
 
Vista:

Se para y no sé porqué.Ayuda!!

Publicado por Miguel (243 intervenciones) el 27/03/2001 18:41:07
Hola.Una ayuda por favor!!!
Este código me va seleccionado texto de un RichTextBox por líneas y columnas,cada selección la enviará a una base de dato, pero se me llega a parar.
¿Alguien sabe porqué?

Dim Linea As Integer
Linea = 48

empezar:
'------FECHA----------
'Esperar un número de segundos
Dim t1g As Date, t2g As Date
t1g = Second(Now)
t2g = t1g + 1
Do
DoEvents
Loop While t2g > Second(Now)
Rich1.SelStart = Linea
Rich1.SelLength = 5
Rich1.SelColor = &HFF
Linea = Linea + 6
'-------HORA------------------
'Esperar un número de segundos
Dim t1 As Date, t2 As Date
t1 = Second(Now)
t2 = t1 + 1
Do
DoEvents
Loop While t2 > Second(Now)
Rich1.SelStart = Linea
Rich1.SelLength = 5
Rich1.SelColor = &HFF
Linea = Linea + 6
GoTo empezar

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:Se para y no sé porqué.Ayuda!!

Publicado por duke (5 intervenciones) el 28/03/2001 16:40:00
la rutina ke espera x segundos esta mal construida. tu programa se detiene cuando el segundero llega a 60 sg ya ke entra en un bucle infinito.

la variable t2 contiene una fecha 05/02/1900 mientras ke t1 contiene un numero (utiliza la ventana de depuracion y compruebalo). vamos, un desastre de rutina :)

para hacer una espera de x segundos te envio esta funcion:

Public Sub Esperar(Seg As Integer)

'-- FUNCION QUE HACE UNA PAUSA DURANTE 'seg' SEGUNDOS --

Dim NowTimer As Double
Dim BeginTimer As Double
Dim TimeDiff As Integer

BeginTimer = Timer

Do
DoEvents
NowTimer = Timer
If NowTimer < BeginTimer Then
TimeDiff = 86400 + NowTimer - BeginTimer
Else
TimeDiff = NowTimer - BeginTimer
End If
Loop Until TimeDiff >= Seg

End Sub

en tu programa puedes poner en lugar de los bucles ke tienes, por ej:

esperar 5

y haras una pausa de 5 sg.
espero ke esto te ayude.
saludos.
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