Visual Basic - para la ejecucion

Life is soft - evento anual de software empresarial
 
Vista:

para la ejecucion

Publicado por alcohol (3 intervenciones) el 01/09/2003 16:44:46
Hola,

Necesitaria para la ejecucion dentro de una funcion un determinado tiempo ( muy poco 10 milisegundo aproximadamente), hay alguna forma de hacerlo sin ningun timer.
Si no hay mas opciones que utilizar un timer ¿ se puede crear el evento timer() en tiempo de ejecucion mediante codigo?
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:para la ejecucion

Publicado por Juan (284 intervenciones) el 01/09/2003 18:17:26
Lo puedes hacer usando algunas funciones API. Te pongo un ejemplo de como hacer un retardo de 10 milisegundos con tres funciones distintas:

Private Sub Form_Click()
Dim aux As Long
'Retardo usando GetTickCount
aux = GetTickCount
Do
Loop While GetTickCount < aux + 10
'Retardo usando timeGetTime()
aux = timeGetTime
Do
Loop While timeGetTime < aux + 10
'Retardo usando Sleep()
Sleep 10
End Sub
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

Te pongo las declaraciones del ejemplo anterior

Publicado por Juan (284 intervenciones) el 01/09/2003 18:19:42
En el ejemplo anterior no te copie las declaraciones necesarias, te las pongo aquí:

Private Declare Function GetTickCount Lib "kernel32" () As Long
'Devuelve el nº de milisegundos transcurridos desde que se inició el sistema
Private Declare Function timeGetTime Lib "winmm.dll" () As Long
'Lo mismo que GetTickCount pero con más precisión
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
'Suspende la ejecución durante el intervalo especificado en dwMilliseconds
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:Te pongo las declaraciones del ejemplo anterior

Publicado por alcohol (3 intervenciones) el 03/09/2003 20:46:04
Tengo sleep dentro de este bucle
Do While linea2.X2 < xFinal
linea2.X2 = linea2.X2 + 400
Sleep 120
Loop
pero se para solo al principio, cuando ocurre el evento, pero dentro del bucle no hace ninguna interrupcion

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