La Web del Programador: Comunidad de Programadores
 
    Pregunta:  5775 - API DE WINDOWS
Autor:  Eloy Martín Silva Vásquez
Como usar la api de Windows Sleep para utilizarla en Visual Basic 6.0
ya que funciona como el Timer.

  Respuesta:  juan cecconi
Hay grandes diferencias entre usar la API sleep y el control timer, pues la API detiene la ejecucion del thread hasta que pasen los x milisegundos que se le pasen como parametro, y luego continua la ejecuccion. Si lo que queres es realizar una temporización sin detener la ejecucion debes hacer un lazo de la siguiente forma:

Pausa = 5 ' Segundos a esperar
HoraActual = Timer ' Hora actual
Do While (Timer < HoraActual + Pausa)
DoEvents ' Procesa los mensajes
Loop

y debes asegurarte que no se entre a esta funcion mientras permanece aqui para que no se genere recursividad.
Hay otra forma de hacer esto pero es con los objetos de sincronizacion de las API (waitforsingleobject y demas funciones) , y es bastante mas complejo.
Pero ojo que esto no tiene relacion con el control timer, ya que este provoca eventos cada periodo de tiempo que se le pone en la propiedad intervalo, sin detener ningun la ejecucion