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 |